masstransit相关内容

大众运输推迟响应萨加斯

我正在研究在公共交通中使用sagas来协调多个服务中的活动.传奇的寿命很短-如果一切顺利的话,不到2秒. 对于我的用例,我想使用请求/响应方法,即客户端请求一个命令,由传奇来处理该命令,在接收到消息时经历一些状态更改,并最终响应所发起的第一个命令传奇,此时客户端会收到响应并显示传奇的结果. 据我所知,此时,上下文不再知道初始请求.如何回复以这种方式收到的消息?在处理第一个事件时,我是否 ..
发布时间:2020-05-06 09:13:44 其他开发

RabbitMQ.轨道交通.虚拟主机.

如何从masstransit服务总线配置中创建虚拟主机? 例如,我的意思是我将我的应用程序部署到了新的PC上,它应该为其自身创建新的虚拟主机. 我正在尝试这样做: var bus = ServiceBusFactory.New(sbc => { sbc.UseRabbitMq(); sbc.U ..
发布时间:2020-05-06 09:13:41 其他开发

更新佐贺县的步骤

我正在寻找一种方法来更改传奇中的步骤,例如:在处理过程中插入一个步骤,最好在运行时插入一个步骤 可以使用sagas吗? 解决方案 Sagas(尤其是使用自动名称编写的Sagas)并非旨在在运行时处理动态配置.它们是创建过程监控器和工作流的一种常用方法. 如果需要动态修改工作流程的步骤,可以使用MassTransit中内置的Courier路由单.它允许工作流中的活动修改行程,并根 ..
发布时间:2020-05-06 09:13:39 其他开发

MassTransit和MaxConcurrentCalls行为不符合预期吗?

我将MassTransit用作消息传递框架,并在Azure Service Bus上运行.我正在WebJob内部运行MassTransit(尽管我认为这并不重要) 现在,我正试图让MassTransit同时处理多条消息,因为我现在正在处理需要花费一段时间才能处理的消息.因此,为了提高性能,我不希望每条消息都一个接一个地处理. 我尝试将MaxConcurrentCalls设置为,例如30 ..

MassTransit:消息协定,多态性和动态代理对象

TL; DR 在合同订阅中,如何获取原始消息内容或原始发布的对象,而不是动态代理? 我在尝试创建基于MassTransit的模块化应用程序时遇到了麻烦. 我的想法是将Websocket服务器连接到队列,它从套接字读取事件并将其作为“连接请求"插入队列中,并从队列中读取事件并将它们作为“连接事件"发送到套接字".两者都有一个合同,该合同允许WS服务器知道事件将连接到哪个连接,而系统的其余 ..

MassTransit-订阅Azure Service Bus上的所有故障事件

我知道此处但没有足够的代表发表评论并要求澄清. 我一直在尝试达到所接受答案所暗示的类似目的, Azure Service Bus 上的一项服务捕获了所有Fault事件,但看不到任何类型的Fault正在发布. 这就是我的订阅方式: Bus.Factory.CreateUsingAzureServiceBus( sbc => { var host = ConfigureSer ..
发布时间:2020-05-06 09:13:28 其他开发

具有Redis持久性的MassTransit传奇赋予Method Accpet没有实现异常

我正在尝试将Redis持久性添加到我的传奇中,该传奇正在管理对路由清单的调用(以及根据路由清单的结果向其他使用者发送其他消息),以希望它可以解决另一个超时问题我不断得到. 但是,我收到一条错误消息,该消息进入RabbitMQ中的saga_error队列. 消息中显示的错误是: 程序集'AutomatonymousGreenPipes.DynamicInternalc8341164 ..
发布时间:2020-05-06 09:13:26 其他开发

Masstransit:它可以使用中央msmq服务器吗? (还是我应该从头开始使用w/RabbitMQ?)

我设置了Masstransit示例应用程序,一切都很棒. msmq本地操作看起来不错. 现在,我开始将masstransit放入我的真实应用程序中.在我的真实应用程序中,我有来自四个服务器的作业,并且在两个工作器系统上进行处理. 似乎大众运输总想推动: msmq://localhost/... 但是我以为我会建立一个单一的中央msmq服务器:msmq:///... 在 ..
发布时间:2020-05-06 09:13:23 其他开发

MassTransit3如何向消费者提出要求

我想从IConsumer.Consume()方法发出请求/请求,但是在ConsumeContext上没有任何方法返回对IRequestClient的引用.我是否需要在某个地方保存对IBusControl的引用并使用它,或者可以以某种方式使用上下文? 解决方案 在这种情况下,最好在使用者外部创建请求客户端,并将其作为依赖项作为IRequestClient接口传递给使用者.使用 ..
发布时间:2020-05-06 09:13:21 其他开发

访问使用者内的对象

我正在一个项目中,该项目使用C# 中的MassTransit和RabbitMQ消耗消息 我正在构建一个原型,现在消费者项目是一个控制台应用程序.在Main program.cs类中,我连接到总线并订阅以接受来自发布者的消息,如下所示: var bus = BusInitializer.CreateBus("Subscriber", x => { ..
发布时间:2020-05-06 09:13:19 C#/.NET

MassTransit:消费者使用完所有消息后,如何停止总线?

在我使用MassTransit消耗了队列中的所有消息之后,我尝试停止总线.我将并发消息限制设置为1,因为我的使用者需要一次处理一条消息. 我尝试将bus.StopAsync()放在bus.StartAsync后面,如下所示.结果表明,在消耗了一条消息之后,总线将停止. 总线配置: IBusControl bus = Bus.Factory.CreateUsingRabbitMq( ..
发布时间:2020-05-06 09:13:17 其他开发

MassTransit:有没有记录收入消息的方法

我想记录我在MassTransit中消耗的每条消息.有没有办法在我可以处理收入消息或使用配置来实现的情况下实现全局拦截器? 我当前的配置如下: BusFactory = Bus.Factory.CreateUsingRabbitMq(cfg => { var host = cfg.Host(new Uri(AppSettings.RmqConnectionString), h ..
发布时间:2020-05-06 09:13:15 C#/.NET

Masstransit和RabbitMQ-已连接多少消费者

我在“竞争消费者"模型和Pub/Sub模型中都使用MassTransit和RabbitMQ. 3层, 第一层 =用户界面,第二层 =网关,第三层 =许多分布式服务 我有一个有效的竞争消费者模型,但我希望对Pub/Sub做以下事情: 网关服务发布一条消息,所有连接的订户实例都将使用该消息,然后响应该网关.直到网关的所有第3层都做出响应,网关才对UI做出响应,网关积累响应并最终传递回 ..
发布时间:2020-05-06 09:13:10 其他开发

如何获取MassTransit IBus的大小(消息数)?

我正在使用 MassTransit 库的InMemoryMessageBus,我想知道如何获取队列中消息的数量(总线的大小). 解决方案 使用内存传输的任何特定队列中的消息数不可用.消息传递基于排队的任务调度程序,并且消息计数尚未可用.我不确定它们是否可以(很容易.很可能.但是实用是另一回事). 更新:此内容已添加到MassTransit中,并将在下一版本(3.5.x)中发布. 跟踪 ..
发布时间:2020-05-06 09:13:08 C#/.NET

MassTransit或nServiceBus是否通过HTTP传输支持MSMQ?

我知道它从MSMQ 3.0开始可用,是否可以通过任何.NET ESB使用? 其他MQ传输(ActiveMQ等)有可能吗? 谢谢, E. 解决方案 NServiceBus使用msmq作为其主要传输方式,但不支持Msmq的http选项.您能详细说明您要达到的目标吗?也许您需要NServiceBus网关组件? http://docs.particular.net/nservicebu ..
发布时间:2020-05-06 09:13:03 其他开发

大众运输:在存在不同消息类型时确保消息处理顺序

我是地铁的新手,我想了解一下它是否对我的情况有帮助. 我正在构建使用CQRS事件源体系结构实现的示例应用程序,并且需要服务总线以便将由命令堆栈创建的事件调度到查询堆栈非规范化器. 我们假设在我们的域中有一个聚合,我们将其称为照片,以及两个不同的域事件: PhotoUploaded 和 PhotoArchived . 在这种情况下,我们有两种不同的消息类型,默认的大众运输行为是创建两种不 ..
发布时间:2020-05-06 09:12:55 其他开发

与MSMQ和SQL Server的分布式事务,但有时会脏读

我们的SQL Server 2014数据库设置为READ_COMMITTED_SNAPSHOT. 我们使用MSMQ和分布式事务(我们使用MassTransit 2.10) 在系统的一部分中,我们从队列中读取一条消息,进行数据库更新,然后将新消息发布到队列中(所有事务都在单个事务中完成). 我们发现一种情况,即使处理下一条消息(它从同一张表中读取第一部分更新),似乎在处理下一条消息 ..
发布时间:2020-05-06 09:12:53 C#/.NET

在自动命名状态机中结合到何时

我正在从MassTransit状态机传奇发出请求,并等待答复. 但是可能会出现两个错误: MyRequest.TimeoutExpired MyRequest.Faulted 我不在乎请求没有满足的条件,我希望两种情况都导致发布错误消息. 但是,我找不到任何将两个结果与或条件结合起来的方法,因此我可以为两个结果提供一个处理案例,而不必复制粘贴我的代码. 解决方案 ..
发布时间:2020-05-06 09:12:51 其他开发