问题标签 [routing-slip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
69 浏览

distributed - 为什么当消费者在 MassTransit RouterSlip 中抛出异常时不调用 Compensate 方法

我在传奇状态机中构建了一个路由器滑动:

我有 TakeProductActivity 活动: public class TakeProductActivity : IActivity<TakeProductArgument, TakeProductLog>: ...

当我使用 sendEndpoint.Send() 方法(触发并忘记)时,当服务中发生异常时,补偿方法不会自动激活,但是当我使用 requestClient.GetResponse (request/reply) 方法调用服务时,当异常自动发生 Compensate 方法被调用。并且在 PaymentConsumer 中,当抛出异常时,它必须被称为付款的补偿方法,但事实并非如此!

问题是 MassTransit 无法从 rabbitMQ 获取异常并自动调用补偿方法。当路由器滑动活动中抛出异常时,我应该如何告诉 MassTransit 调用补偿

0 投票
1 回答
114 浏览

rabbitmq - MassTransit - 在路由单上优先处理 RabbitMQ 消息

RabbitMQ 支持消息优先级:https ://www.rabbitmq.com/priority.html

MassTransit 允许用户在配置端点和发送/发布消息时进行设置。

问题:在 MassTransit 中使用路线单时是否可以设置消息优先级?

我的问题:我们有一个可以立即安排项目或处理它们的屏幕。如果安排好,可以批量处理项目。如果同时处理数百个项目,在屏幕上保存一条记录可能需要几分钟,因为消息会排到队列的末尾,这可能会导致糟糕的用户体验。

那么,如果无法设置优先级,这里有什么替代方案?

谢谢!

0 投票
1 回答
59 浏览

masstransit - MassTransit - 在传送单活动中重新传递消息

我正在使用masstransit Courier 开展一个项目。我正在尝试在 1 小时后重新发送一条消息以重新执行活动。这是我在执行活动方法中的代码:

但不是重新交付,而是开始赔偿。我错过了什么?

0 投票
1 回答
311 浏览

c# - 如何正确监控 MassTransit Courier 路由单?

我设法通过一系列活动来实施 MassTransit Courier 路由单。我决定添加一个状态机来监控它,因此我创建了单独的事件和状态,并使用 EF Core 作为 Automatonymous 状态机的存储。为了跟踪当前状态,我在每个活动执行结束时发布一个事件。一切正常,我可以监控数据库中路由单的当前状态。

但这是最好的方法吗?根据 MassTransit 文档中的这一部分:https ://masstransit-project.com/advanced/courier/events.html看起来应该自动发布事件。那么也许还有另一种方法来监控路由单,它不需要创建事件并在每个活动中手动发布它们?

0 投票
0 回答
109 浏览

masstransit - MassTransit 消息加密和路由单事件

根据 MassTransit 文档,我已为我的 RabbitMQ 总线启用加密:

我还添加了对路由单完成事件的订阅:

虽然所有其他消息都按预期加密,但路由滑动事件以纯文本形式发送(可以在 RabbitMQ 队列中看到)并导致以下异常:

是否有一些额外的配置需要应用于路由单(我在 ISendEndpoint 界面上看不到任何相关内容)或者这是 MassTransit 中的错误?

0 投票
1 回答
48 浏览

masstransit - 使用快递重试消息

如您所知,在 Masstransit 中,我们可以设置 UseMessageRetry。该方法可以帮助我们再次重试消息发送过程。只要我们遇到错误,这个过程就会继续。我遇到的问题是这个设置是每条消息的单例。我想要的是为特定消息(信使)设置不同的配置。

我为所有消息设置的设置如下:

如果有人可以帮助我,我将不胜感激。