博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RabbitMQ消息队列、路由器、消息的持久化
阅读量:7087 次
发布时间:2019-06-28

本文共 1258 字,大约阅读时间需要 4 分钟。

 

如有错误还请斧正,谢谢

```C#

//入列

ConnectionFactory factory = new ConnectionFactory { HostName = "localhost", UserName = "You`rName", Password = "You`rPassword" };//实例化连接工厂
using (IConnection conn = factory.CreateConnection())//建立连接
{
//创建信道
using (IModel im = conn.CreateModel())
{
//order为交换器名称,ExchangeType为交换机类型(Direct,Fanout,Topic,Headers)具体使用场景在印象笔记中有记录
im.ExchangeDeclare("order", ExchangeType.Direct,durable:true,autoDelete:false,arguments:null);
//creatorder为队列名,第一个false是durable(持久化)第二个false是exclusive(是否排他)第三个false为autodelete(是否自动删除)null为arguments(其他参数)
im.QueueDeclare("creatorder", durable:true,exclusive:false,autoDelete:false,arguments:null);
//creatorder为队列名,order为交换器名,ExchangeType.Direct是路由key,null为arguments(其他参数)
im.QueueBind("creatorder", "order", ExchangeType.Direct, null);
byte[] message = ConvertToByteHelp.ObjectToBytes(order);//把对象转换成bytes[]
IBasicProperties properties = im.CreateBasicProperties();
//properties.SetPersistent(true);队列设置为持久化之后,需要将消息也设置为持久化这是老方法已过时下面为先用新方法
properties.DeliveryMode = 2;//将消息持久化的新方法
im.BasicPublish("order", ExchangeType.Direct, properties, message);//推送消息
//im.BasicPublish("order", routingKey: "Direct", basicProperties: properties, body: message);
}
}

```

转载于:https://www.cnblogs.com/SupPilot/p/10214456.html

你可能感兴趣的文章
c语言,gdb
查看>>
新手学习Cocoapods教程
查看>>
使用React并做一个简单的to-do-list
查看>>
unity, 使导入的材质名与3dmax中一致
查看>>
SpringMVC简单例子
查看>>
蓝牙音箱连接成功但没有声音还是电脑的声音
查看>>
ng-file-upload结合springMVC使用
查看>>
005 Hadoop的三种模式区别
查看>>
在笛卡尔坐标系上描绘函数 y=4x^2-2/4x-3
查看>>
ubuntu 下无损扩展分区
查看>>
Caused by: org.xml.sax.SAXParseException; lineNumber: 1
查看>>
手机资源共享
查看>>
Mahout-DistanceMeasure (数据点间的距离计算方法)
查看>>
在线研讨会网络视频讲座 - 方案设计利器Autodesk Infrastructure Modeler 2013
查看>>
【转】批量杀进程
查看>>
通过file_get_contents执行带参数的php
查看>>
Java 公历转农历,然后农历减一年(或者几天或者任意天),再把这个日期转成公历...
查看>>
Hibernate HQL查询:
查看>>
系统吞吐量(TPS)、用户并发量、性能测试概念和公式
查看>>
R语言笔记1--向量、数组、矩阵、数据框、列表
查看>>