一、ActiveMQ原生的连接工程:ActiveMQConnectionFactory
默认的maxThreadPoolSize=1000,也就是每个connection的session线程池最大值为1000,可以根据自己应用定制。
我们一般不直接用这个连接工厂,原因是:这个connectionFactory不会复用connection、session、producer、consumer,每次连接都需要重新创建connection,再创建session,然后调用session的创建新的producer或者consumer的方法,然后用完之后依次关闭,比较浪费资源。
我们一般用这个连接工厂作为其他拥有更高级功能(缓存)的连接工厂的参数。
二、PooledConnectionFactory
PooledConnectionFactory会缓存connection,session,和producer,不会缓存consumer,更适合于发送者。
maxConnections为最大连接数;
maximumActiveSessionPerConnection为每个连接最大的会话数量。
可以自行设置