MQ Client Agent设计

目标

在业务处理上常常须要使用MQ做为消息流转和分发的渠道,但不一样MQ产品其提供的操做方式都有着不一样的差别性存在,这样会使开发人员使用起来就相对比较麻烦;MQ Client Agent的设计目的就是提供一个统一的MQ写入规则,让开发人忽略具本MQ操做的细节,即便在更换MQ产品的时候也能够在不修改现有逻辑代码的前提下轻易达到切换不一样的MQ产品能力. ide

功能

  • 提供消息统一写入规则功能库
  • 支持可配置的MQ Connection Provider
  • 支持能够的Message Handler

结构

功能类

使用

[TestMethod]
        public void TestRegister()
        {
            Register register = new Register();
            register.EMail = "henryfan@msn.com";
            register.Name = Guid.NewGuid().ToString("N");
            mClient.Enqueue(register);
        }
        [TestMethod]
        public void TestContact()
        {
            Contact contact = new Contact();
            contact.Country = "zh";
            contact.Address = Guid.NewGuid().ToString("N");
            contact.City = "gz";
            contact.Region = "gd";
            mClient.Enqueue(contact);
        }

     配置 ui

<configSections>
    <section name="routeSection" type="IKende.MSMQ.Client.RouteSection, IKende.MSMQ.Client"/>
  </configSections>
  <routeSection xmlns="urn:IKende.MSMQ.Client">
    <route>
      <queue type="IKende.MSMQ.Client.Test.Register,IKende.MSMQ.Client.Test">
        <hosts>
          <host name="N1" url="win-n8l2b1u5eqv\private$\Register"/>
        </hosts>
      </queue>
      <queue type="IKende.MSMQ.Client.Test.Contact,IKende.MSMQ.Client.Test">
        <hosts>
          <host name="N1" url="win-n8l2b1u5eqv\private$\Contact"/>
        </hosts>
      </queue>
    </route>
  </routeSection>
相关文章
相关标签/搜索