• 日志消息

  日志队列可以保存你操作过的消息的备份。它的好处是,一但发现前面的操作失败,可以从日志队列中重新创建出原先的消息对象,然后再进行操作。

  例如,向远方发送一个消息对象,然后对方返回一个失败的确认。我们可以从失败确认消息中提取出一个和开始发送的消息相关的ID值,然后根据提出的ID值从日志队列中找到发送的消息,

重新创建一个消息对象,并再次发送。在.net中,我们使用 ReceiveByCorrelationID 或 PeekByCorrelationID 方法根据 CorrelationD 值取得消息对象。
  在一台机器上,都会有一个全局消息队列,它保存任何从该机器发出的消息,而不论消息发送是否成功。每个消息队列也可以有自己的消息日志队列。

日志队列的使用有两种方式

  一种是对消息队列对象设置 UseJournalQueue 属性,它表示对该队列收到的所有消息使用日志记录方式,而对于发出的消息不做任何记录;

  另一种方法是对消息对象设置 UseJournalQueue 属性,所有被发送的消息将被记录到系统日志队列中去。

消息日志队列有一个最大容量,称作quota,一旦日志队列存储容量到达该值后,以后到来的本应存储的的消息将不再被存储,同时不会发出任何的出错信息。

所以作为管理人员,应该定期清理日志队列,以防止上述现象的发生。消息队列只是被动的接收端,它们不可能返回确认消息,或者发送删除的消息到死信队列中,或者是进行超时处理。
例子:
设置消息队列对象的 UseJournalQueue 属性,以记录收到的消息到日志队列中
 MyMessageQueue.UseJournalQueue=True

设置消息对象的 UseJournalQueue 属性,以记录收到的消息到系统日志队列中
  MyMessage.UseJournalQueue=True

  • 死信队列

最新文章

  1. Js中的this指向问题
  2. UVA1629Cake slicing(记忆化搜索)
  3. 将byte[]数组数据转换为图片用于预览显示
  4. Redis链接上不的问题
  5. Hadoop port to Jxta P2P Framework
  6. HW5.26
  7. [.Net MVC] 过滤器以及异常处理
  8. json对象和json字符串转换方法
  9. MONGO DB windows 设备
  10. vim 常用操作
  11. nginx+tomcat集群负载均衡(实现session复制)
  12. Docker教程:docker machine的配置和命令
  13. EntityFramework Inner Exception Catch
  14. KVM环境安装macOS Sierra
  15. 最短路,floyd算法,图的最短路径
  16. MFC笔记8
  17. 小程序/js监听输入框验证金额
  18. 在centos服务器上启用ipv6地址
  19. struck 模块
  20. 如何查找元素对应事件的js代码

热门文章

  1. jQuery基础之一
  2. Windows与Linux的命令行命令对比
  3. 第五章jQuery
  4. 压力测试:系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式
  5. ActiveMQ (三)—持久化消息
  6. Maven多项目继承:dependencyManagement scope=import
  7. 排产的两种方式(前推式与后拉式)在Optaplanner上的体现
  8. Ubuntn16.04.3安装Hadoop3.0+scale2.12+spark2.2
  9. Redis的过期策略和内存淘汰策略(转)
  10. PXC5.7(Percona XtraDB Cluster)+HAproxy+Keepalived 集群部署