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

目录
相关文章
|
Java 中间件 API
【C/C++ 线程 】深入浅出:理解 std::thread 的局限性
【C/C++ 线程 】深入浅出:理解 std::thread 的局限性
1117 2
|
传感器 网络协议 Linux
在Linux中使用libmodbus库进行Modbus TCP通信
Modbus TCP是一种常见的工业通信协议,用于在自动化系统中传输数据。libmodbus是一个流行的C库,用于在Linux系统上实现Modbus TCP通信。本文将介绍如何使用libmodbus库在Linux上创建Modbus TCP通信的示例代码。
5036 0
|
存储 编译器 测试技术
交叉编译spdlpg 参数详解
交叉编译spdlpg 参数详解
1083 0
|
存储 XML 网络协议
幅度调制与角度调制 2
幅度调制与角度调制
1083 0
|
前端开发 JavaScript 程序员
【前端开发---Vue2】史上最详细的Vue2入门教程,从基础到进阶带你彻底掌握Vue(三)
【前端开发---Vue2】史上最详细的Vue2入门教程,从基础到进阶带你彻底掌握Vue(三)
|
数据采集 人工智能 数据挖掘
数据仓库原理(一)
数据仓库原理(一)
【Simulink】飞轮储能系统的建模与MATLAB仿真(永磁同步电机作为飞轮驱动电机)
【Simulink】飞轮储能系统的建模与MATLAB仿真(永磁同步电机作为飞轮驱动电机)
|
存储 网络协议 Linux
RTnet – 灵活的硬实时网络框架
本文介绍了开源项目 RTnet。RTnet 为以太网和其他传输媒体上的硬实时通信提供了一个可定制和可扩展的框架。 本文描述了 RTnet 的架构、核心组件和协议。
816 0
RTnet – 灵活的硬实时网络框架
|
JSON 数据格式 C++
使用NlohmannJson写JSON保留插入顺序
使用NlohmannJson写JSON保留插入顺序
635 0

热门文章

最新文章