Queued Services

1.Queue Contract: [OperationContract(IsOneWay = true )]

2.Configuration of DisableSecurity(同时设置MEX):

                 <endpoint
                    address="net.msmq://localhost/private/ClassA_SendMail"
                    binding="netMsmqBinding "
                    contract="EmailService.ISendMail"
                    bindingConfiguration="SendMailNetMsmqBinding" />
                <endpoint
                    address="mex"
                    binding="mexHttpBinding"
                    contract="IMetadataExchange" />
                <host>
                    <baseAddresses>
                        <add baseAddress="http://localhost:8080/SendMail/" />
                    </baseAddresses>
                </host>

        <bindings>
            <netMsmqBinding>
                <binding name="SendMailNetMsmqBinding">
                    <security mode="None" />
                </binding>
            </netMsmqBinding>
        </bindings>

3.使用Queue之前要Verify是否存在

ServiceHost host = new ServiceHost(typeof(MyService)); if(MessageQueue.Exists(@"./private$/MyServiceQueue") == false)

{

  MessageQueue.Create(@"./private$/MyServiceQueue",true );

}

4.MSMQ支持Transaction,包括三种:

1)客户端的Transaction:Client->Client Queue

2)Delivery Queue:客户端的Queue Delivery 到服务端的Queue

3)服务端的Transaction:Service 从Service Queue接收数据

5,避免Sessionful queued service

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值