Message中CreateBasicProperties属性

一、message中的CreateBasicProperties
1、在之前的文章中,使用了很多这个属性
2、持久化
exchange,queue的时候,都有一个持久化的概念,mnesia,保存在数据库中去了
message呢,能否持久化呢
Persistent=true 持久化

二、lazy queue
1、懒队列 【用到的时候才加载】
Lazy Queue:数据来了,我就将其放在disk中,而不存放在内存中;
Default Queue:普通队列;
(in-memory) 【Persistent=false】数据直接存在在内存中;
(on desk)【Persistent=true】 会将数据存放在内存中,同时还会降message放在disk中,等到内存有压力时候获取gc需要回收内存等等情况,会将memory paged out 到disk中;
可以将queue插入int.maxvalue条数据,看看memory的情况,进行测试
1)Lazy Queue+in-memory message放在disk中,可以看到,内存少量增长
2) Default Queue+in-memory 如果你采用的是in-memory,在内存急缺的情况下还是会paged out
3) Lazy Queue+desk 内存不会涨上去,restart后message还会保存
4) Default Queue+desk 内存+磁盘都会有数据

原文地址:https://www.cnblogs.com/sailing92/p/13711563.html