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>
相關文章
相關標籤/搜索