前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >消息代理对比DB

消息代理对比DB

作者头像
JavaEdge
发布2022-10-04 08:38:59
2780
发布2022-10-04 08:38:59
举报
文章被收录于专栏:JavaEdgeJavaEdge

有些消息代理甚至可使用 XA 或 JTA 参与两阶段提交协议。这和DB在本质相似,尽管消息代理和DB存在实践上很重要的差异:

  • DB通常保留数据直至显式删除,而大多消息代理在消息成功递送给消费者时会自动删除消息。这样的消息代理不适合长期数据存储
  • 由于它们很快就删除消息,大多数消息代理都认为它们的工作集很小,即队列很短。如代理需缓冲很多消息,比如因为消费者速度慢(如果内存装不下消息,可能会溢出到磁盘),每个消息需要更长处理时间,整体吞吐量可能恶化
  • DB通常支持次级索引和各种搜索数据方式,而消息代理通常支持按照某种模式匹配主题,订阅其子集。虽机制不一,但对于客户端选择想要了解的数据的一部分,都是基本方式
  • 查询DB时,结果通常基于某时间点数据快照;若另一个客户端随后向数据库写入一些改变了查询结果的内容,则第一个客户端不会发现其先前结果现已过期(除非它重复查询或轮询变更)。而消息代理不支持任意查询,但当数据发生变化时(即新消息可用时),它们会通知客户端

这是关于消息代理的传统观点,它被封装在诸如 JMS 【14】和 AMQP 【15】的标准中,并且被诸如 RabbitMQ、ActiveMQ、HornetQ、Qpid、TIBCO 企业消息服务、IBM MQ、Azure Service Bus 和 Google Cloud Pub/Sub 所实现。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-09-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据保险箱
数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档