Linux 连接池-LCP
LCP是Linux Connection Pool的简写,是基于Linux模块开发的线程安全连接池,减少由频繁建立和释放连接带来的系统开销,提升服务响应速度,支持跨语言、多服务的连接池,应用层代码不需要做任何改动,对于某些服务采用服务器主动关闭连接的这种情形,需要配置使用具体的IP和端口号来预先派生连接后续升级版本会针对这种情况做特殊处理,采用C语言开发并在GPL协议下授权。别名:(kconnp, Kernel-based Connection Pool)
特性
支持跨语言(C, C++, PHP, JAVA, ...)共享连接池
支持多服务(Memcached, MySQL, Redis, Oracle, ...)建立连接池
线程安全
工作原理图:

环境要求
X86架构CPU
LINUX内核版本>=2.6.18
使用
命令:
kconnp (stats|reload|start|stop|restart)
stats: 输出连接池统计信息
reload: 重新加载配置文件
start: 启动连接池服务
stop: 关闭连接池服务
restart: 重启连接池服务
配置文件:
全局配置文件: /etc/kconnp.conf
白名单:/etc/iports.allow
黑名单:/etc/iports.deny
说明:
黑名单优先级高于白名单
IP地址和端口号如果均为具体配置,那么基于该IP和端口号的连接将会预派生
如果该配置为具体配置且为有状态的连接,那么该连接最多使用一次后,将会关闭
统计信息每5秒更新一次
最新版本:1.0
经过大量测试,效果非常明显,对于无状态的连接速度提升尤其明显。
项目主页:https://github.com/zzgang/kconnp