当前位置: 首页 > news >正文

做网站要先做商标吗wordpress多站版

做网站要先做商标吗,wordpress多站版,做网站模版,山东网络推广优化排名MassTransit#xff1a;是一款.NET的分布式应用程序框架#xff08;开源、免费#xff09;。通过MassTransit#xff0c;可以轻松创建利用基于消息的、松耦合异步通信的应用程序和服务#xff0c;以提高可用性#xff0c;可靠性和可伸缩性。MassTransit本身定位轻量级的服… MassTransit是一款.NET的分布式应用程序框架开源、免费。通过MassTransit可以轻松创建利用基于消息的、松耦合异步通信的应用程序和服务以提高可用性可靠性和可伸缩性。MassTransit本身定位轻量级的服务总线并支持多种传输方式如RabbitMQ、Azure Service Bus、ActiveMQ、Amazon SQS、Kafka、Azure Event Hub。消息异常处理重试配置、重新交付、erro管道、死信管道。分布式事务处理sagas、Courier。容器支持.NETcore自身的、autofac、castle windsor等、调度支持Quartz 、hangfire。更多功能参考官网文档。MassTransit目前已经发布到了第7个版本了7.0版本新增了对Kafka 的支持构建仅支持.NET Standard 2.0...其他改动不大。MassTransit社区使用也是很活跃的对于首次接触的通过本篇文章基于rabbitmq帮你快速入门一个应用程序或服务可以使用两种不同的方法来生产消息主要区别是sent需要指定具体的端点地址而pub不需要下面的代码会演示这两种方式。发布事件多个接收者发送命令一个接收者发布事件事件消息场景假设在xx项目中需要与第三方进行交互。比如订单发货之后把发货的信息的推送给第三方、把订单的状态变化也推送过去。我们分析下需求系统要求在发货之后需要做若干事情。可以解读为发货这个动作已经发生了需要做的事情不确定。这不是典型的发布订阅模式嘛好了那使用masstransit如何实现呢1.创建一个类库项目定义消息体命名为contract public interface OrderShipped{public Guid OrderId { get; set; }//订单号} 2.创建一个api项目作为消息的生产方命名为Delivery然后安装nuget包Install-Package MassTransit.AspNetCore Install-Package MassTransit.RabbitMQ 在Startup类的ConfigureServices中添加以下配置services.AddMassTransit(x {x.UsingRabbitMq((context, config) {config.Host(rabbitmq://localhost:5672, hostConfig {hostConfig.Username(Amq);//填写你的用户名hostConfig.Password(mq123);//填写你的用户名});});});services.AddMassTransitHostedService(); 在ValueController中进行发布消息 readonly IPublishEndpoint _publishEndpoint;public ValuesController(IPublishEndpoint publishEndpoint){_publishEndpoint publishEndpoint;}/// summary/// 测试发布/// /summary/// returns/returns[HttpPost]public async TaskActionResult OrderDelivery(){//其他await _publishEndpoint.PublishOrderShipped(new{OrderId Guid.NewGuid()});return Ok();} 通过使用IPublishEndpoint实例的Publish方法发布一个事件。3.创建一个api项目作为消息的消费方命名为Listener然后安装nuget包Install-Package MassTransit.AspNetCore Install-Package MassTransit.RabbitMQ 在Startup类的ConfigureServices中添加以下配置 services.AddMassTransit(x {x.AddConsumerDeliveryExpressNotifyConsumer();x.UsingRabbitMq((context, config) {config.Host(rabbitmq://localhost:5672, hostConfig {hostConfig.Username(Amq);hostConfig.Password(mq123);});config.ReceiveEndpoint(Order.Shipped, e {e.ConfigureConsumerDeliveryExpressNotifyConsumer(context);});});});services.AddMassTransitHostedService(); 实现接口IConsumer即可完成消费逻辑的过程。 public class DeliveryExpressNotifyConsumer : IConsumerOrderShipped{ILoggerDeliveryExpressNotifyConsumer _logger;public DeliveryExpressNotifyConsumer(ILoggerDeliveryExpressNotifyConsumer logger){_logger logger;}public async Task Consume(ConsumeContextOrderShipped context){_logger.LogInformation(订单id: {Value}已发货通知第三方, context.Message.OrderId);}} 到此消息生产方和消费方代码都已经实现了运行一下效果如下发送消息命令消息发送消息适用的场景常常是一种命令并且期望消息只被一个接收者或服务实例进行处理。masstransit使用发送消息和发布消息在消息生产方不同之处sent消息需要指定目标地址使用ISendEndpoint的Send方法消费者代码一样的配置。以下代码演示发送一个创建发货单的指令消息比较简单直接贴出源码1.定义一个消息SubmitShippingOrder public class SubmitShippingOrder{public Guid OrderId { get; set; }} 2.sent消息 readonly IPublishEndpoint _publishEndpoint;readonly ISendEndpointProvider _sendEndpointProvider;public ValuesController(IPublishEndpoint publishEndpoint, ISendEndpointProvider sendEndpointProvider){_publishEndpoint publishEndpoint;_sendEndpointProvider sendEndpointProvider;}/// summary/// 测试发送/// /summary/// returns/returns[HttpPost]public async TaskActionResult Delivery(){var endpoint await _sendEndpointProvider.GetSendEndpoint(new Uri(queue:Submit.Shipping.Order)); //获取发送端点await endpoint.Send(new SubmitShippingOrder{OrderId Guid.NewGuid()});return Ok();} 3.消费 public class SubmitShippingOrderConsumer : IConsumerSubmitShippingOrder{ILoggerSubmitShippingOrderConsumer _logger;public SubmitShippingOrderConsumer(ILoggerSubmitShippingOrderConsumer logger){_logger logger;}public async Task Consume(ConsumeContextSubmitShippingOrder context){_logger.LogInformation(创建发货单订单id: {Value}, context.Message.OrderId);}} 运行一下效果官网文档http://masstransit-project.com/https://masstransit-project.com/advanced/courier/
http://wiki.neutronadmin.com/news/107698/

相关文章:

  • 广州正规网站制作公司wordpress下载破解版
  • 大连网站建设报价优质商家口腔网站建设
  • 上海专业的网站永州城乡建设网站
  • 国外网站视频播放器怎么做网站的动效
  • 福州网站大全免费炫酷企业网站源码
  • 中小学网站建设论文上海工商网站
  • 在线做带字头像的网站谷歌优化工具
  • 长沙网站公司网站建设58同城找房子租房
  • 拟定建设方案物流网站免费网站统计
  • 昆明做一个公司网站多少费用云服务器可以做多个网站
  • 桂林哪里做网站网站建设除凡科外还有哪些
  • 如何知道一个网站做的什么推广商品网站建设及推广策划书
  • 做网站用什么软件ps字体推广的方式
  • 百度指数查询官网入口网站优化seo推广服务
  • 东营外贸型网站设计凡科建站源码
  • 网络网站开发培训局网站建设工作总结
  • 泉州市住房和城乡建设网站道滘仿做网站
  • 晋城市网站建设管理人员软件定制网
  • 江苏中粟建设工程有限公司网站网站怎么做vga头
  • 网站商城方案电子商务网站建设选修课
  • 商务网站的建设与维护西安黄页网
  • 企业开办网站网站后台 批量上传
  • 门户型网站建设方案wordpress调用微云视频
  • 企业网站建设哪家服务好h5网站建设机构
  • 网站建设我要自学网广州 做网站
  • 网站开发怎么使用sharepoint长沙在线注册公司
  • 西安微信公众号制作正规网站优化推广
  • 企业官网建站在线html网页编辑器
  • 英文淘宝网站建设wordpress 内容模板下载失败
  • 免费自助建网站软件网站建设公司百家号