pgpool
spche
这个作者很懒,什么都没留下…
展开
-
pgpool分析
应用http://mengqingyu.javaeye.com/blog/463666http://zauc.wordpress.com/2010/01/23/%E4%BD%BF%E7%94%A8pgpool-ii%E8%BF%9B%E8%A1%8Cpostgresql%E7%9A%84replication/http://blog.csdn.net/xtlog/archive/200原创 2010-04-16 14:36:00 · 1824 阅读 · 1 评论 -
pgpool分析二
pgpool就是一个架在数据库与应用系统之间的中间层,用于实现cluster或分布式数据库,实现数据库的大规模集成应用,类以于oracle的Tuxedo;不过这个是开源的,功能上也有一些限制,具体应用去它的官网上去看,下面主要分析它的实现原理对于replication,它和mysql一样是通过传递SQL实现的,对于分布式存储,它是把SQL经过parse,rewrite之后,生成经过优化后的SQ原创 2010-05-20 22:56:00 · 5104 阅读 · 1 评论 -
pgpool分析三
pgpool一共可以管理pool_config->num_init_children * pool_config->max_pool * sizeof(ConnectionInfo);数据库连接每个pool_config->num_init_children 对应pgpool的一个child进程,也就是对应一台postgresql数据库,这个进程最多可以管理pool_config->max_p原创 2010-05-28 15:09:00 · 2012 阅读 · 0 评论 -
pgpool分析五,query cache
<br />pgpool的query cache没有存放在内存中,是存放在systemdb中的,通过libpq连到systemdb中,<br />在child的进程中,存在QueryCacheInfo结构体,用于暂存将来存入systemdb的cache<br />/* data structure to store RowDescription and DataRow cache */<br />typedef struct<br />{<br />char *md5_query; /* query原创 2010-06-02 16:42:00 · 1284 阅读 · 0 评论 -
pgpool分析四
pgpool的child进程负责把jdbc,psql 的连接做为frontend,并把对数据库的连接做为backend,pgpool做为中间的桥,所以当通过socket进行通信时,pgpool必须使用postgresql的通信协议child进程对于数据库的连接是存放到pool_connection_pool中的,是根据frontend传入的用户名与数据库名查找的,如不存在就新建,新建的过程中会与pool_config->backend_desc->backend_info存在的每个数据库都建立一个连接,形成原创 2010-06-02 16:24:00 · 1754 阅读 · 0 评论