日期:2014-05-16  浏览次数:20951 次

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" 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),服务器配置就到到这儿了。

1 楼 hallywang 2008-07-09  
没人顶你。我来顶你。知道我是谁吧
2 楼 hazard 2008-08-13  
感谢楼主,正在找这方面的资料呢:)