数据库连接池libzdb的使用

   在上一个项目的性能测试中,发现瓶颈主要在对数据库的操作上,原来的系统对数据库操作只有一个连接,而IO操作的效率相对于计算的效率而言简直是一种不可容忍的。所以就产生了在这个项目中使用数据库连接池这种想法。

   由于时间比较紧张,碰巧在网上找到了一个开源的数据库连接池,所以也就诞生了这篇博文。

  当然对于技术实力比较强的团队来说,可以会选择根据自己的需要去自己去做一个连接池。

 首先介绍一下这个libzdb ; 

libzdb的官方说明的特性:

  • Thread safe Database Connection Pool
  • Connect to multiple database systems
  • Zero runtime configuration, connect using a URL scheme
  • Supports MySQL, PostgreSQL, SQLite and Oracle

补充:缺点:不支持window,所以如果要是在windows下开发的时候可能不是很方便,但是libzdb的邮件列表反馈很及时,在列表中提出的问题,一般一两天就会

得到官方的工程师的回答

 它的几个相关网站如下:

http://www.tildeslash.com/libzdb/#     libzdb的offiCal website

  libzdb是由这家公司开发的,所以质量应该可以值得信任

libzdb的代码使用googlecode上代管

        https://code.google.com/p/libzdb/

当时的安装系统是redhatlinux  ,直接下载代码编译安装

./configure;  make ; make install

当时的使用数据库环境为oracle11gr2

基本的使用可以参看源代码中的示例代码,在test目录下,但是

  基本的使用为:

在程序启动的时候,调用url_new 和 connectpool_new来初始化连接池

1、调用 connection_start启动连接池

2、后面的就可以在线程中或者在具体的处理流程中调用getcon来获得连接,进而执行sql语句即可

3、在程序结束的时候要对应调用url_free和connection_pool_free来释放资源

上面就是对libzdb的基本介绍。

欢迎和各位进行交流,email:jiajiama0107@gmail.com

时间: 2024-10-02 04:14:50

数据库连接池libzdb的使用的相关文章

PHP没有数据库连接池怎么破?PHP环境下使用Nginx ngx

线上运行了一套辅助系统是利用了开源的PHP改的,之前也没怎么玩过PHP,没想到这玩意儿还是有不少坑的.突然某一天一个用户做线上活动推广,然后短时间内涌进来了上万的请求,然后数据库连接耗尽,短时间内几乎拖垮了整个系统.导致系统奔溃的有多方面原因,今天主要针对PHP没有数据库连接池的原因来分析. 在PHP里,数据库连接在请求到达时建立,请求结束时释放.如果同时几千个请求到达,那就同时会建立几千个数据库连接,非常恐怖.而且PHP木有比较好的数据库连接池驱动方案,所以我们得另想办法. 解决这种问题有三种

如何给 Log4j 配上数据库连接池

数据|数据库|数据库连接 我们都知道log4j是一个优秀的开源日志记录项目,我们不仅可以对输出的日志的格式自定义,还可以自己定义日志输出的目的地,比如:屏幕,文本文件,数据库,甚至能通过socket输出. 现在让我们对日志输出到数据库来进行配置 配置如下: #---JDBC ---输出到数据库 # JDBCAppender log4j.properties file #log4j.rootCategory=WARN,JDBC # APPENDER JDBC log4j.appender.JDBC

基于JDBC的数据库连接池技术研究与应用

数据|数据库|数据库连接 摘 要 本文介绍了Java访问数据库的原理及其存在的问题,提出了解决办法-数据库连接池,并对其关键问题进行了分析,构建了一个简便易用的连接池并结合当前热门技术Servlet说明了其如何在开发时使用. 关键词 JDBC,Jsp/Servlet,数据库连接池,多数据库服务器和多用户,多线程 引言 近年来,随着Internet/Intranet建网技术的飞速发展和在世界范围内的迅速普及,计算机 应用程序已从传统的桌面应用转到Web应用.基于B/S(Browser/Server

Tomcat 的数据库连接池设置与应用

数据|数据库|数据库连接 1.将数据库驱动程序的JAR文件放在Tomcat的 common/lib 中: 2.在server.xml中设置数据源,以MySQL数据库为例,如下:在<GlobalNamingResources> </GlobalNamingResources>节点中加入,      <Resource      name="jdbc/DBPool"      type="javax.sql.DataSource"     

Tomcat4.1.31的数据库连接池配置

数据|数据库|数据库连接 (摘自JAVA中文站) 本文是作者在配置廖兄的blog时用到的,刚开始使用Tomcat5.0.27,后又使用Tomcat5.5.4,但是配置数据库总有错误,后来发现时context标志被取消的缘故.吾本性情中人,搞不定就换,于是就使用Tomcat4.1.31.主要参考FanyHan等人的相关文章,介绍了Tomcat4.1.31这个版本下数据库连接池的配置,及程序对连接池的JNDI查找,并提供相应测试代码.最后指出配置及应用过程中的常见问题及解决方法. 一. Tomcat

Resin2.1.12的数据库连接池配置

数据|数据库|数据库连接 (摘自JAVA中文站) Resin的确是比较狠的应用服务器,运行速度快,配置又简单!这里介绍一下Resin2.1.12的数据库连接池配置方法. 在%ResinHome%/conf/resin.conf中找到 <!-- - Sample database pool configuration - The JDBC name is java:comp/env/jdbc/test --> 在其下加入相应的信息可以连接到不同的数据库. Mysql: <resource-

基于JDBC的数据库连接池技术研究与设计

设计|数据|数据库|数据库连接 摘 要 本文介绍了基于JDBC的数据库连接池的工作原理,阐述了连接池技术的事务处理.多数据库服务器等各项关键技术,提出了一个高效的连接池管理策略,最后详细说明了数据库连接池应用的具体实现过程. 关键词 JDBC; 数据库; 连接池; 事务处理 随着信息技术的高速发展与广泛应用,数据库技术在信息技术领域中的位置越来越重要,尤其是网络应用和电子商务的迅速发展,都需要数据库技术支持动态Web站点的运行,而传统的开发模式是:首先在主程序(如Servlet.Beans)中建

Tomcat下配置MySQL数据库连接池

mysql|数据|数据库|数据库连接 经过大半天的实践和摸索,终于在Tomcat下成功地配置MySQL的数据库连接池.总结如下: 1.在$CATALINA_HOME/conf/server.xml中添加配置信息,声明连接池的具体信息,添加内容如下: <!--声明连接池--> <Resource name="jdbc/mysql"auth="Container" type="javax.sql.DataSource"/> &

JSP数据库连接池的必要性

js|数据|数据库|数据库连接    最近我作了数据库JSP的频繁连接,在此给出数据库连接池的必要性,对于JSP来说一个很好的J2EE服务器是很必要的,JBOOS,WebLogic都是很好的解决方案. 一般情况下,在使用开发基于数据库的WEB程序时,传统的模式基本是按以下步骤: 1. 在主程序(如Servlet.Beans)中建立数据库连接. 2. 进行SQL操作,取出数据. 3. 断开数据库连接. 使用这种模式开发,存在很多问题.首先,我们要为每一次WEB请求(例如察看某一篇文章的内容)建立一