MetaQ

作者: Michael_zmh | 来源:发表于2017-05-27 09:17 被阅读0次

MetaQ

简介:

  • 概念:MetaQ是一款分布式、队列模型的消息中间件。
  • 模式:分为Topic与Queue两种模式
  • 消费方式:Push和Pull两种方式消费
  • 特点:支持严格的消息顺序,亿级别的堆积能力,支持消息回溯和多个维度的消息查询。

影响性能的关键几点

  • 序列化与反序列化
    从MetaQ Cleint要发送消息,必须要先序列化,然后才能通过网络发送出去。 MetaQ Server收到消息后,要进行反序列化,才能解析出消息内容,最后序列化存储到文件系统。
    MetaQ Client收到消息,首页MetaQ Server必须从文件中读取消息,然后通过网络发送给MetaQ Client,收到消息,进行反序列化,应用才能识别消息内容。
    MetaQ核心功能,都要通过序列化与反序列化,所以其性能,对MetaQ性能有关键性的影响,其实不是对MetaQ,只要使用了序列化与反序列化,其对性能影响都很大。
    虽然使用Google的Protocol Buffers性能会更好,但各个版本不兼容。所以MetaQ选择使用JSON
  • write性能
    因为MetaQ Server会有大量的write系统调用 ,所以其性能对MetaQ性能有着重要的影响。
    优化:
  • MetaQ消息只保留在一个物理文件上,所有的消息都会写一个物理文件,每个物理文件都是固定大小,超过设置的阀值后,自动创建新的一个文件。当磁盘快满时,会自动删除老的文件。
  • read性能
    因为MetaQ Server会有大量的read系统调用 ,所以其性能对MetaQ性能有着重要的影响。
    优化:
  • read优化主要是使用了map文件映射技术。这样可以减少系统上下文切换和复制数据的开销。
  • 同时文件系统提供了文件预读的功能,也使的读取文件开销,特别是顺序读时,开销比较低。
  • 网络框架
    因为发送消息,订阅消息都必须经过网络,如果网络组件性能不好,对MetaQ性能有着关键的影响。
  • MetaQ的网络框架,选择了Netty4。Netty4因出色的性能和易用性,成为高性能场景的不二选择。

Group Commit技术

  • Group Commit也就是组提交,组提交是指可以多次分写请求只要通过一次刷新数据,就可以实现这些请求的数据都已刷新到磁盘上。
  • MySQL数据库能保证ACID,事务提交也使用了Group Commit来提高性能(为了保证D,数据需要持久化到文件系统)。

MetaQ学习笔记

相关文章

  • RocketMQ是什么

    RocketMQ 是 MetaQ 的 3.0 版本,而 MetaQ 最初的设计又参考了 Kafka 。MetaQ ...

  • MetaQ

    MetaQ 简介: 概念:MetaQ是一款分布式、队列模型的消息中间件。 模式:分为Topic与Queue两种模式...

  • metaq

    1、metaq如何做集群?broker做集群。使用相同的server.ini文件,修改brokerId即可,不需要...

  • MetaQ

    MetaQ是一个队列模型消息中间件。经历了3个阶段: 在2011年1月份发布了1.0版本,从Apache Kafk...

  • metaq

    metaq与rocketmq区别metaq属于rocketmq阿里内部定制化版本,整体基本一致 使用场景 1.削峰...

  • MetaQ原理简介(一)

    MetaQ是阿里巴巴中间件团队开发的一款消息队列中间件,说起MetaQ的命名呢,也是有点意思。MetaQ最早是基于...

  • 分布式事务

    metaq与rocketmq区别metaq属于rocketmq阿里内部定制化版本,整体基本一致 使用场景 1.削峰...

  • 阿里资深架构师带你认识,MetaQ 消息中间件

    MetaQ MetaQ 是一款分布式、队列模型的消息中间件。分为 Topic 与 Queue 两种模式,Push ...

  • MetaQ中间件原理

    metaq是阿里团队的消息中间件,之前也有用过和了解过kafka,据说metaq是基于kafka的源码改过来的,他...

  • 中间件-MetaQ

    MetaQ是一款分布式、队列模型的消息中间件。基于发布订阅模式,有Push和Pull两种消费方式,支持严格的消息顺...

网友评论

      本文标题:MetaQ

      本文链接:https://www.haomeiwen.com/subject/iluwxxtx.html