使用 DB2 Universal Database V8 中的连接集中器来增强性能
2008-09-17 16:31:32 来源:WEB开发网禁止连接池而启用连接集中器的潜在问题是,一旦达到事务边界,代理就会终止。当事务结束时,大多数代理将被终止。当事务开始时,总是需要分配新的代理。这样会导致到达事务边界时的代理分配和解除分配这一巨大开销,这会影响连接集中器的功能。
调整代理的参数以适应连接集中器
有关连接集中器的一个常见问题是,“将 max_connections 和 max_coordagents 设为多大才最好?”
答案涉及到数据库管理器配置中代理的调整,正确的方法是进行微调。每个参数的设置依赖于您当前运行的系统。
以下是我的建议:
保持您当前的 maxagents、max_coordagents 和 num_poolagents 设置。设置 max_connections = max_coordagents + 1 而打开连接集中器。
现在连接集中器是打开的,服务器的配置仍然保持不变。所以,资源使用和可以连接到系统的用户数量应该不变,但是使用或产生的 db2agent 进程更少。
截取一个数据库管理器快照:db2 get snapshot for dbm
下面来看快照输出的底部部分:
Agents assigned from pool = 0
Agents created from empty pool = 4
Agents stolen from another application = 0
High water mark for coordinating agents = 1
Max agents overflow = 0
Hash joins after heap threshold exceeded = 0
查找 "high water mark for coordinating agents" 一行。这表示自您的实例以启用连接集中器开始以来的所有时间点上存在的最大代理数。
在连接集中器场景中,只有在事务需要时才产生代理。因此,这个最高数字基本上就是在启用连接集中器时您同时需要的最大代理数。
更多精彩
赞助商链接