RabbitMq应用实践一(报文)

MQ应用一般步骤:
1. 定义队列
2. 定义队列和key值
3. 监听路由key(通知队列上的监听对象)
4. 定义消费者(监听对象)
第一步:配置connection-factory,指定连接rabbit server参数

<!--配置connection-factory,指定连接rabbit server参数 -->
    <rabbit:connection-factory id="connectionFactory"
                               virtual-host="${messaging.ribbitmq.vhost}"
                               username="${messaging.ribbitmq.username}"
                               password="${messaging.ribbitmq.password}"
                               host="${messaging.ribbitmq.address}"
                               port="${messaging.ribbitmq.port}"/>

第二步:

<!--定义rabbit template用于数据的接收和发送 -->
    <rabbit:template id="amqpQueryTransactionRequestTemplate" connection-factory="connectionFactory"
                     exchange="${messaging.ribbitmq.exchange}" routing-key="account.rq.pgw.query_transaction"/>

   <!--通过指定下面的admin信息,当前producer中的exchange和queue会在rabbitmq服务器上自动生成 -->
    <rabbit:admin connection-factory="connectionFactory" id="rabbitAdmin"/>

第三步: 1. 定义队列(1)
2. 定义队列和key值(2)

   <!--定义queue -->
    <!--绑卡 -->
    <rabbit:queue name="q-account-rq-trusteeship-ygonline-addDeleteCardNotice" durable="true" auto-delete="false"
                  exclusive="false"/>
    <!--单笔自动投标 -->
    <rabbit:queue name="q-account-rq-trusteeship-ygonline-singleAutoBid" durable="true" auto-delete="false"
                  exclusive="false"/>
    <rabbit:queue name="q-account-rq-trusteeship-ygonline-singleAutoBidNotice" durable="true" auto-delete="false"
                  exclusive="false"/>
    <!--账务通知-->
    <rabbit:queue name="q-account-rq-trusteeship-ygonline-acctnotifyCheckSynz" durable="true" auto-delete="false"
                  exclusive="false"/>

第四步:监听队列-

 <rabbit:topic-exchange>
 <!--绑卡/修改手机号 -->
            <rabbit:binding queue="q-account-rq-trusteeship-ygonline-addDeleteCardNotice"
                            pattern="pgw.rs.trusteeship.ygonline.account.add_delete_card_notice"/>
            <rabbit:binding queue="q-account-rq-trusteeship-ygonline-account-resetMobileNotice"
                            pattern="pgw.rs.trusteeship.ygonline.account.reset_mobile_notice"/>

 <!--单笔自动投标 -->
            <rabbit:binding queue="q-account-rq-trusteeship-ygonline-singleAutoBid"
                            pattern="pgw.rs.trusteeship.ygonline.account.single_auto_bid"/>
            <rabbit:binding queue="q-account-rq-trusteeship-ygonline-singleAutoBidNotice"
                            pattern="pgw.rs.trusteeship.ygonline.account.single_auto_bid_notice"/>

<!--账务通知-->
            <rabbit:binding queue="q-account-rq-trusteeship-ygonline-acctnotifyCheckSynz"
                            pattern="pgw.rs.trusteeship.ygonline.account.acctnotify_check_synz"/>
</rabbit:topic-exchange>

第五步:消息接受者

<!--绑卡/修改手机号 -->
 <bean id="removeBindCardReceiver" 
          class="com.yingu.account.structure.messaging.RemoveBindCardConsumer"></bean>
  <!--单笔自动投标 -->
   <bean id="singleAutoBidReceiver" 
          class="com.yingu.account.structure.messaging.SingleAutoBidConsumer"></bean>
    <bean id="singleAutoBidSuccessReceiver"
          class="com.yingu.account.structure.messaging.SingleAutoBidSuccessConsumer"></bean>
 <!--账务通知-->
  <bean id="acctnotifyCheckReceiver"
          class="com.yingu.account.structure.messaging.AcctnotifyCheckConsumer"></bean>

第六步: – queue litener 观察 监听模式 当有消息到达时会通知监听在对应的队列上的监听对象

 <!--绑卡/修改手机号 -->
        <rabbit:listener queues="q-account-rq-trusteeship-ygonline-addDeleteCardNotice" ref="removeBindCardReceiver"/>
        <rabbit:listener queues="q-account-rq-trusteeship-ygonline-account-resetMobileNotice" ref="restMobilReceiver"/>
 <!--单笔自动投标 -->
        <rabbit:listener queues="q-account-rq-trusteeship-ygonline-singleAutoBid" ref="singleAutoBidReceiver"/>
        <rabbit:listener queues="q-account-rq-trusteeship-ygonline-singleAutoBidNotice"
                         ref="singleAutoBidSuccessReceiver"/>
<!--账务通知-->
        <rabbit:listener queues="q-account-rq-trusteeship-ygonline-acctnotifyCheckSynz" ref="acctnotifyCheckReceiver"/>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值