JMS Apache ActiveMQ使用(1)
现在的系统业务是每人开发一个模块,然后用HTTP接口访问。由多个用个用户注册的入口,用户注册事件处理也分布到不同的代码里。看起来相当不舒服,所以决定使用JMS来处理事件触发后的逻辑,降低系统的耦合,也方便开发修改代码。
以前也只是听说过MQ,但一直也开发过这方面的程序,趁此机会正好学习一下。由于现在开发的也不是什么大型系统,采用Apache的ActiveMQ就足够了。网上很多资料都是把ActiveMQ嵌入到web模块中,就现在的系统而言由于业务模块会经常更新,这种方式会导致其他使用ActiveMQ的JMS Client发送消息失败。所以还是独立的ActiveMQ比较好。首先下载ActiveMQ,我下载的是5.10版。解压缩到一个目录。修改conf/activemq.xml配置文件,把持久化方式改为数据库保存
<!--此处默认采用TCP Connector,端口61616,可以不用修改--><transportConnectors> <transportConnector name="openwire" uri="tcp://localhost:61616" discoveryUri="multicast://default"/></transportConnectors><persistenceAdapter> <jdbcPersistenceAdapter dataSource="#oracle-ds"/></persistenceAdapter><bean id="oracle-ds" destroy-method="close"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/> <property name="url" value="jdbc:oracle:thin:@192.168.1.10:1521:mysid"/> <property name="username" value="huzl"/> <property name="password" value="j7Z"/> <property name="maxActive" value="200"/> <property name="poolPreparedStatements" value="true"/> </bean>