您的位置:首页 > 运维架构 > Apache

JMS Apache ActiveMQ使用(1)

2013-09-27 15:37 441 查看
现在的系统业务是每人开发一个模块,然后用HTTP接口访问。由多个用个用户注册的入口,用户注册事件处理也分布到不同的代码里。看起来相当不舒服,所以决定使用JMS来处理事件触发后的逻辑,降低系统的耦合,也方便开发修改代码。 
     

 以前也只是听说过MQ,但一直也开发过这方面的程序,趁此机会正好学习一下。由于现在开发的也不是什么大型系统,采用Apache的ActiveMQ就足够了。网上很多资料都是把ActiveMQ嵌入到web模块中,就现在的系统而言由于业务模块会经常更新,这种方式会导致其他使用ActiveMQ的JMS
Client发送消息失败。所以还是独立的ActiveMQ比较好。首先下载ActiveMQ,我下载的是5.10版。解压缩到一个目录。修改conf/activemq.xml配置文件,把持久化方式改为数据库保存 

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" class="org.apache.commons.dbcp.BasicDataSource" 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>  

[xml] view
plaincopyprint?

<!--此处默认采用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" class="org.apache.commons.dbcp.BasicDataSource" 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>  

具体详细的配置说明我也没找到,不过可以参照其/activemq-core-5.1.0.xsd文件 

然后启动ActvieMQ服务(bin/activemq.bat),服务器配置就到到这儿了。 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jmsTemplate activemq jms