Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wcf 不应该';有毒消息服务处理一般消息吗?_Wcf_Msmq - Fatal编程技术网

Wcf 不应该';有毒消息服务处理一般消息吗?

Wcf 不应该';有毒消息服务处理一般消息吗?,wcf,msmq,Wcf,Msmq,好的,所以我一直在试着绕着队列->死信队列->死信队列的毒药子队列-> 现在,到目前为止,如果消息处理失败或接收方不支持对消息执行操作,则可以将消息发送到中毒队列。显示使用与主服务相同的合同执行毒药服务。如果错误是契约不支持提供的消息,那么这不会将有毒消息队列中的有毒消息放入有毒消息队列中吗 如果有一个处理程序可以处理毒药队列中的任何东西,这不是更有意义吗?下面假设一个WCF消息,它可能也不安全(并且完全未经测试),但是有没有一种方法可以进行防傻瓜的毒药队列处理?我越是尝试去思考排队的边缘情况,

好的,所以我一直在试着绕着队列->死信队列->死信队列的毒药子队列->

现在,到目前为止,如果消息处理失败或接收方不支持对消息执行操作,则可以将消息发送到中毒队列。显示使用与主服务相同的合同执行毒药服务。如果错误是契约不支持提供的消息,那么这不会将有毒消息队列中的有毒消息放入有毒消息队列中吗

如果有一个处理程序可以处理毒药队列中的任何东西,这不是更有意义吗?下面假设一个WCF消息,它可能也不安全(并且完全未经测试),但是有没有一种方法可以进行防傻瓜的毒药队列处理?我越是尝试去思考排队的边缘情况,我就越觉得不可能有一个完整的系统来处理所有的可能性

    [OperationContract(IsOneWay = true, Action = "*")]
    [OperationBehavior(TransactionScopeRequired = true, TransactionAutoComplete = true)]
    public void CatchAll(Message message)
    {
        // Log somewhere?
    }
另一个想法是使用触发器将所有消息从中毒队列移回死信队列,以便再次处理—这可能会再次中毒并无限循环


我想具体的问题是。。人们如何处理死信队列中的有毒消息?一般的问题是-你是如何处理MSMQ中的所有情况的?

据我所知,
MsmqMessage
类型可以与任何WCF MSMQ绑定一起使用


因此,如果指定的接收类型为
MsmqMessage
,则应涵盖所有基础。您将以字符串形式接收消息。如何处理字符串中的内容是另一回事…

据我所知,
MsmqMessage
类型可以与任何WCF msmq绑定配合使用


因此,如果指定的接收类型为
MsmqMessage
,则应涵盖所有基础。您将以字符串形式接收消息。你如何处理字符串中的内容是另一回事…

那么你是说不要麻烦执行原始合同吗?在毒药处理程序中是的。那么你是说不要麻烦执行原始合同吗?在毒药处理程序中是的。