数据库连接池libzdb的使用-阿里云开发者社区

开发者社区> 数据库> 正文
登录阅读全文

数据库连接池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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: