当应用程序连接DB2数据库时,DB2会对所有连接(本地的和远程的)请求分配代理程序。代理程序代表应用程序执行所有数据库请求。
在V9.5之前的UNIX或Linux平台上用ps -ef命令,可以看到下面的进程名:
db2agent 协调代理程序
db2agentg DRDA应用程序请求器的网关代理程序
db2agnsc 并行恢复代理程序
db2agnta 空闲的子代理程序,与某个协调代理程序关联,但无任何任务
db2agntp 子代理程序,当前为与之关联的协调代理执行工作
这些进程都是DB2的代理程序,它们为应用程序服务。
从工作状态上来分,运行中的DB2代理程序,大概分三种:
空闲代理:没有任何任务,不服务任何的应用程序
协调代理:直接面对一个应用程序提供服务
子代理: 面对协调代理,执行来自于协调代理分派的任务(只在V9.5之前的多分区或节点内并行的环境下存在)
与代理程序相关的配置参数
MAXAGENTS 实例级 实例中全部代理的最大数量
NUM_POOLAGENTS 实例级 代理池中空闲代理的最大数量,超过该