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

企业做网站的好处千秋网络seo培训讲师招聘

企业做网站的好处千秋网络,seo培训讲师招聘,wordpress不用邮箱,帝国cms+wordpress我们通过手动应答处理了在消费者出故障消息丢失的情况,但是如何保障当 RabbitMQ 服务停掉以后消息生产者发送过来的消息不丢失。默认情况下 RabbitMQ 退出或由于某种原因崩溃时,它会清空队列和消息,除非告知它不要这样做。确保消息不会丢失可…

我们通过手动应答处理了在消费者出故障消息丢失的情况,但是如何保障当 RabbitMQ 服务停掉以后消息生产者发送过来的消息不丢失。默认情况下 RabbitMQ 退出或由于某种原因崩溃时,它会清空队列和消息,除非告知它不要这样做。确保消息不会丢失可以做三件事:我们需要将交换机、队列和消息都标记为持久化

交换器持久化
  • 交换器的持久化是通过在声明交换器时, 指定Durability参数为durable实现的。
  • 若交换器不设置持久化,在rabbitmq服务重启之后,相关的交换器元数据会丢失,但消息不会丢失,只是不能将消息发送到这个交换器中。所以在声明交换器时,都要设置持久化。
  • 在web监控创建时,默认也是持久化模式,指定持久化模式带有标识“D”。

队列持久化
  • 队列的持久化是通过在声明队列时, 指定Durability参数为durable实现的。
  • 若队列不设置持久化,在rabbitmq服务重启之后,相关队列的元数据和消息数据同时丢失。
  • 若队列设置持久化,只能保证队列本身的元数据不会因异常情况而丢失,但是并不能保证内部所存储的消息不会丢失。要确保消息不会丢失,需要将消息设置为持久化。
  • 在web监控创建时,默认也是持久化模式,指定持久化模式带有标识“D”。

消息持久化
  • 消息的持久化可以通过消息的投递模式来实现,属于代码层面上的。可以控制每一条消息是否久化。
  • 但是将所有消息都设置为持久化,会严重影响rabbitmq服务器性能,写入磁盘的速度比写入内存的速度慢得不只一点点。所以对于可靠性不是那么高的消息可以不采用持久化处理以提高整体的吞吐量。在选择是否要将消息持久化时,需要在可靠性和吐吞量之间做一个权衡。

总结

将交换器、队列、消息都设置了持久化之后能百分之百保证数据不丢失吗?答案是不能?

  • 从消费者来说,如果在订阅消费队列时将 autoAck 参数设置为 true,那么当消费者接收到相关消息之后,还没来得及处理就宕机了,这样也算数据丢失。这种情况很好解决,将autoAck 参数设置为 false,并进行手动确认。
  • 在持久化的消息正确存入rabbitmq之后,还需要有一段时间(虽然很短,但是不可忽视) 才能存入磁盘之中。如果在这段时间内rabbitmq服务节点发生了宕机、重启等异常情况,消息保存还没来得及落盘,那么这些消息将会丢失。这种情况可以使用镜像队列来解决。
http://www.ds6.com.cn/news/16740.html

相关文章:

  • 惠州企业网站建设免费建站网站网页
  • 广东建设网站首页情感链接
  • 做水产有什么网站最新国内重大新闻
  • 做网站所需要的技术seo需要掌握什么技能
  • 常见购物网站功能做网站用什么编程软件
  • 做网站树立品牌形象公众号推广渠道
  • 厦门app网站建设企业网络营销方案
  • 做网站数据库及相关配置seo黑帽多久入门
  • 赣州有没有做网站的百度搜索网站优化
  • php网站开发实例教程源代码软文写作经验
  • 誓做中国最大钓鱼网站河南网络推广公司
  • 新吴区住房和建设交通局网站百度之家
  • 福建省漳州市建设局网站广告公司业务推广
  • 网站优化的链接建设站长工具seo综合查询源码
  • 朝城做网站公司seo经理招聘
  • 做网站补贴服装店营销策划方案
  • wordpress模版教程西安seo整站优化
  • 做公司网站哪里好怎么自己创建网站
  • ps免费模板网站省好多会员app
  • 大连制作网站企业网址提交
  • 网站建设的步骤过程视频关键词怎么提取
  • 免费的网站域名查询方法有哪些seo外链平台
  • 大冶市规划建设局网站网络运营主要做什么工作
  • 国外网站建设什么价格低关键字排名软件官网
  • phpcms 做购物网站好用的种子搜索引擎
  • 做商品网站的教学视频照片查询百度图片搜索
  • 德州做网站最好的公司手机百度安装下载
  • 怎么做网站教程简单提升神马seo关键词自然排名
  • wordpress好用中文插件郑州优化公司有哪些
  • 别人帮我做的网站没用要交费用吗网站维护费用一般多少钱