Metamorphosis是一个高性能、高可用、可扩展的分布式消息中间件,由淘宝通用产品-消息中间件团队开发,思路起源于LinkedIn的Kafka,但并不是Kafka的一个Copy。具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用于大吞吐量、顺序消息、广播和日志数据传输等场景,目前在淘宝和支付宝有着广泛的应用。
特征
- 生产者、服务器和消费者都可分布
- 消息存储顺序写
- 性能极高,吞吐量大
- 支持消息顺序
- 支持本地和XA事务
- 客户端pull,随机读,利用sendfile系统调用,zero-copy ,批量拉数据
- 支持消费端事务
- 支持消息广播模式
- 支持异步发送消息
- 支持http协议
- 支持消息重试和recover
- 数据迁移、扩容对用户透明
- 消费状态保存在客户端
- 支持同步和异步复制两种HA
- 支持group commit
- 更多……
总体结构
内部结构
Broker增加或减少时
当broker server增加或减少时,client会重新进行负载均衡。Broker减少的瞬间,在负载均衡之前,已经发送到减少的那台broker但未到达服务器时,客户端将会捕获到发送异常,由业务决定如何处理,负载均衡之后将正常发送到其他服务器上。
- 大小: 52.3 KB
- 大小: 136.7 KB
分享到:
相关推荐
3. 交易柔性事务支付宝的开源分布式消息中间件–Metamorphosis(MetaQ):负责处理交易消息的传输和处理,包括消息存储、顺序写、吞吐量大和支持本地和XA事务等功能。 Metamorphosis(MetaQ) 介绍: Metamorphosis...
### 支付宝钱包系统架构内部剖析 ...其中,Metamorphosis (MetaQ)作为支付宝内部广泛使用的一款分布式消息中间件,凭借其卓越的性能表现和丰富的功能特性,成为了支撑支付宝钱包系统高效运行的重要基石。
在IT行业中,Zookeeper和Metamorphosis作为重要的分布式中间件,扮演着数据协调和消息队列的关键角色。本篇将深入探讨Zookeeper 3.4.5版本以及与其相关的Metamorphosis-Server-Wrapper工具包,旨在帮助读者理解和...
Metamorphosis (MetaQ) 是一个高性能、高可用、可扩展的分布式消息中间件,类似于LinkedIn的Kafka,具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用 于大吞吐量、顺序消息、广播和日志数据传输等场景,...
总的来说,Metamorphosis作为一款强大且定制化的消息中间件,不仅具备了Kafka的基础功能,还提供了诸如Java重写、负载均衡、高可用性方案等一系列增强特性,为大型分布式系统中的数据传输和处理提供了高效、可靠的...
Metamorphosis是一款基于Java的消息中间件,它是LinkedIn开源MQ——Kafka的Java版本,专为淘宝内部应用进行了定制和优化。这款中间件的设计遵循了几个核心原则: 1. **消息持久化**:所有消息都会被保存在磁盘上,...
Metamorphosis,简称MetaQ,是一款高效、稳定、可扩展的消息队列系统,由阿里巴巴开发并开源,主要用于解决分布式环境下的异步处理、解耦以及数据传输等问题。在1.4.3版本中,MetaQ提供了更优化的性能和更多的功能...
Metamorphosis(MetaQ)是一个高性能、高可用、可扩展的分布式消息中间件,类似于LinkedIn的Kafka,具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用于大吞吐量、顺序消息、广播和日志数据传输等场景,在...
在本文中,我们将深入探讨淘宝团队开发的中间件Meta在Ubuntu操作系统上的搭建过程。...通过以上步骤,开发者可以在Ubuntu环境中成功搭建和运行淘宝团队的Meta中间件,从而实现高效的消息处理和数据流转。
Metamorphosis是一个高性能、高可用性的分布式消息中间件,广泛应用于阿里巴巴集团内部,它提供了丰富的API和配置选项,以满足不同场景下的需求。 1. 普通发送消息 这是最基础的消息发送方式,发送方发送消息后会...
- **角色**:消息中间件的角色分为消息生产者和消息消费者。生产者创建并发送消息至Metaq服务器,服务器负责消息的持久化,消费者则从服务器拉取消息进行消费。 7. **消息会话工厂**: - **MessageSessionFactory...