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

杭州 做网站网站做管理员消息推送

杭州 做网站,网站做管理员消息推送,制作网站详细步骤,自己做网站卖货多少钱1.首先安装RabbitMQ服务器#xff0c;项目中添加RabbitMQ客户端库。以下是一个简单的示例#xff0c;演示了如何在C#应用程序中发送和接收消息#xff1a; using RabbitMQ.Client; using System; using System.Text;class Program {static void Main(){var factory new Co…1.首先安装RabbitMQ服务器项目中添加RabbitMQ客户端库。以下是一个简单的示例演示了如何在C#应用程序中发送和接收消息 using RabbitMQ.Client; using System; using System.Text;class Program {static void Main(){var factory new ConnectionFactory() { HostName localhost };using (var connection factory.CreateConnection())using (var channel connection.CreateModel()){channel.QueueDeclare(queue: hello,durable: false,exclusive: false,autoDelete: false,arguments: null);string message Hello, RabbitMQ!;var body Encoding.UTF8.GetBytes(message);channel.BasicPublish(exchange: ,routingKey: hello,basicProperties: null,body: body);Console.WriteLine( [x] Sent {0}, message);}Console.WriteLine( Press [enter] to exit.);Console.ReadLine();} } 上述代码演示了一个简单的生产者它连接到本地的RabbitMQ服务器声明一个名为hello的队列并向该队列发送一条消息。 在channel.QueueDeclare方法中各参数的含义如下 queue队列的名称。这是必需的参数用于指定要声明的队列的名称。 durable指定队列是否持久化。如果设置为trueRabbitMQ会在服务器重启后保留该队列否则在服务器重启后队列将被删除。默认值为false。 exclusive指定队列是否为独占队列。如果设置为true只有声明该队列的连接能够使用这个队列连接关闭后队列将被删除。默认值为false。 autoDelete指定当最后一个消费者断开连接之后队列是否自动删除。如果设置为true当最后一个消费者断开连接后队列将被自动删除。默认值为false。 arguments用于设置其他参数的可选参数。例如可以使用arguments来设置队列的TTLtime to live、死信交换机等特殊属性。 通过这些参数您可以根据实际需求来声明一个队列例如设置队列的持久化属性、独占性质和自动删除行为以及其他特殊的队列参数。 在channel.BasicPublish方法中各参数的含义如下 exchange消息发送到的交换机的名称。交换机负责将消息路由到队列。空字符串表示默认交换机消息会直接路由到指定的队列非空字符串表示使用指定名称的交换机。 routingKey路由键用于将消息从交换机路由到队列。当消息发送到交换机时交换机会根据路由键将消息路由到一个或多个队列。 basicProperties消息的基本属性。可以设置消息的各种属性比如消息的持久化、优先级、过期时间等。通常情况下可以将其设置为null表示使用默认的消息属性。 body消息的内容。以字节数组的形式表示消息的实际内容。 通过这些参数您可以将指定消息发送到交换机、使用的路由键以及设置消息的属性和内容。这样就可以灵活地控制消息的发送行为。 2.下面是一个简单的消费者示例它从队列中接收消息 using RabbitMQ.Client; using RabbitMQ.Client.Events; using System; using System.Text;class Program {static void Main(){var factory new ConnectionFactory() { HostName localhost };using (var connection factory.CreateConnection())using (var channel connection.CreateModel()){channel.QueueDeclare(queue: hello,durable: false,exclusive: false,autoDelete: false,arguments: null);var consumer new EventingBasicConsumer(channel);consumer.Received (model, ea) {var body ea.Body.ToArray();var message Encoding.UTF8.GetString(body);Console.WriteLine( [x] Received {0}, message);};channel.BasicConsume(queue: hello,autoAck: true,consumer: consumer);Console.WriteLine( Press [enter] to exit.);Console.ReadLine();}} } 上述代码为一个简单的消费者它连接到本地的RabbitMQ服务器声明一个名为hello的队列并开始从该队列接收消息。 ex: 事件处理器用于处理RabbitMQ消费者接收到消息的情况 consumer.Received (model, ea) 事件订阅语法表示当消费者接收到消息时触发的事件。一旦消费者接收到消息就会执行下面的花括号内的代码。这行代码是用于订阅指 queue: hello表示要订阅的队列名称为hello即消费者将从名为hello的队列中接收消息。 autoAck: true表示是否自动确认消息。如果设置为true当消费者接收到消息后会立即向RabbitMQ服务器发送一个消息确认告知服务器该消息已被处理。这意味着一旦消息被发送到消费者RabbitMQ就会将其视为已成功处理即使消费者尚未完成对消息的处理。这种方式可能会导致消息丢失或重复处理因此在实际场景中需要谨慎使用。 consumer: consumer表示用于处理接收到消息的消费者对象。在这里您可以传入之前创建的消费者对象以便让RabbitMQ知道收到消息后将其交给哪个消费者进行处理。 3.Demo为C#应用程序中使用RabbitMQ进行消息的发送和接收。在实际环境中要考虑更多因素--错误处理、连接管理、序列化和反序列化等
http://www.pierceye.com/news/945891/

相关文章:

  • 免费看电视剧的网站2021传媒公司名字大全免费
  • 宝塔面板怎么搭建网站wordpress怎么自己写代码
  • 张家界网站建设培训机构管理系统哪个好
  • 网站开发语言开发网站建设和网站开发
  • 上海哪家做网站关键词排名西安到北京高铁几小时
  • 网站后台怎么添加图片大连精美网站制作
  • 电子商务网站建设规划说明书长沙百度快速排名
  • 自由建网站的网络程序在哪建设网站
  • 做u盘的老外网站黑龙江省住房和城乡建设厅官网
  • 网站logo如何替换wordpress怎么实现付费可见
  • 广州网站建设公司排行南宁企业网站建站
  • 网站优化总结报告个人博客网
  • 愿景 做中国最受欢迎的互联网网站找小程序
  • 重庆seowhy整站优化即时设计是什么软件
  • 哈尔滨网站建设哪个好做网站和域名
  • 制作网站的步骤和过程无锡网站改版多少钱
  • 网站建设与维护实训ppt可以在线做动图的网站
  • 软件开发外包网站开发系统的流程
  • 花卉网站建设策划方案二手房发布网站怎么做
  • 公司做影视网站侵权iis配置网站访问权限
  • 做网站的时候卖过假货而出过事如何做tiktok的数据排行网站
  • 给网站网站做推广获奖网站设计
  • 河南建设厅网站查证报名网站开发多钱
  • 杭州做网站 做小程序网站百度知道怎么做推广
  • 网站防红链接怎么做国内设计欣赏网站
  • 网站被黑咋样的wordpress导入用户数据库
  • wordpress 插件设计搜索引擎优化常用方法
  • ps怎样做网站大图wordpress固定链接精简
  • 学校网站推广方案商城系统app
  • 图书馆管理系统产品介绍网站如何做seo