首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NServiceBus ServiceInsight - Post重试

NServiceBus ServiceInsight - Post重试
EN

Stack Overflow用户
提问于 2013-10-09 21:23:02
回答 1查看 159关注 0票数 0

我正在尝试创建一个包含链接的网页,该链接将尝试重试a消息。

下面是一个存根输出(R&D -它很难看,请原谅我)调用,它试图重试特定的消息。首先,我的网址是正确的吗?我从ServiceInsight抓取了guid,当我在ServiceInsight中右键单击它时,它会有重试的选项。当我执行此代码时,返回的结果是成功的,并且没有有效负载,但是当我刷新ServiceInsight时,消息仍然存在。

您能提供的任何见解都将不胜感激。顺便说一句,如果能得到某种性质的返回值就更好了。例如,如果消息已经成功处理了,在这种情况下,重试应该返回一些不能完成的消息。例如,如果我在ServiceInsight中右键单击status列中有绿色图标的项目,则不会启用retry选项。

代码语言:javascript
复制
function DoPost(){
alert("start");

jQuery.support.cors = true;

$.post( "http://localhost:33333/api/errors/97db46a9-dd22-488d-8ec3-a24770bbxdcf/retry", 
    function(data) { alert(data); alert( "success" );})  
    .done(function() { alert( "done" );  })  
    .fail(function(xhr, ajaxOptions, thrownError) { alert(xhr.status); alert(thrownError); alert( "error" );  })  
    .always(function() { alert( "always" ); }   );

alert("end");

}

EN

回答 1

Stack Overflow用户

发布于 2013-10-10 15:24:39

ServiceInsight只允许重试在此阶段失败的消息。稍后,我们将为负载测试之类的事情添加发送消息(也是批量发送)。在带有绿色图标的邮件上禁用重试选项的原因是。

重试过程本质上是异步的,您触发一个请求,它会立即返回。稍后,当消息被实际处理时,它可能工作,因此消息被成功处理,或者它可能再次失败,最终可能再次出现(可能是相同的)错误。你不能从重试中得到返回值的原因是我们不知道在那个阶段它是否被处理了。虽然您的请求尚未处理,但如果您获得一个消息列表,则等待重试的特定消息将具有RetryIssued状态。

事实证明,服务控制(也称为管理API)并不检查消息是否可以重试,它只检查所提供的消息Id是否存在。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19273343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档