阅读更多

14顶
2踩

开源软件
淘宝开发团队近日开源了消息中间件Metamorphosis。

Metamorphosis是一个高性能、高可用、可扩展的分布式消息中间件,思路起源于LinkedIn的Kafka,但并不是Kafka的一个Copy。具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用于大吞吐量、顺序消息、广播和日志数据传输等场景,目前在淘宝和支付宝有着广泛的应用。

Metamorphosis的特性如下:

  • 生产者、服务器和消费者都可分布
  • 消息存储顺序写
  • 性能极高,吞吐量大
  • 支持消息顺序
  • 支持本地和XA事务
  • 客户端pull,随机读,利用sendfile系统调用,zero-copy ,批量拉数据
  • 支持消费端事务
  • 支持消息广播模式
  • 支持异步发送消息
  • 支持http协议
  • 支持消息重试和recover
  • 数据迁移、扩容对用户透明
  • 消费状态保存在客户端
  • 支持同步和异步复制两种HA
  • 支持group commit
现在该中间件已开源,项目地址:http://metaq.taobao.org/

源码:http://code.taobao.org/p/metamorphosis/src/

14
2
评论 共 33 条 请登录后发表评论
13 楼 p&g 2012-03-13 17:20
有能下下来的朋友吗
12 楼 Jen 2012-03-13 13:21
chenzehe 写道
那Notify是干啥的

notify是我们组另一个消息中间件,跟meta的使用场景有所不同,即将开源
11 楼 jilen 2012-03-13 09:09
hudepin 写道
svn的用户名密码是多少啊

没有密码也可以co。要是密码都告诉你了,你不就是committer了
10 楼 hudepin 2012-03-13 09:03
svn的用户名密码是多少啊
9 楼 大秦布衣 2012-03-12 20:12
值得 推荐
8 楼 jilen 2012-03-12 18:10
貌似有些类是从netty steal过来的
7 楼 rain999 2012-03-12 16:49
底层有点像mina
6 楼 ljmomo 2012-03-12 16:19
SVN 下不下来。
5 楼 igotti 2012-03-12 12:47
taocode上的项目很不错啊
4 楼 zelsa 2012-03-12 12:07
好东西,终于开源了 
3 楼 tommet 2012-03-12 12:00
没听过 看看怎么样
2 楼 itstarting 2012-03-12 10:39
其网页上的“内部结构”图有typo
——这种东西总该有人review下吧,大图也就那么几张而已
1 楼 chenzehe 2012-03-12 10:11
那Notify是干啥的

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • metaq消息中间件服务端、客户端资源汇集

    Metamorphosis是淘宝开源的一个Java消息中间件,他类似apache-kafka,但不是一个简单的山寨拷贝,而是做了很多改进和优化,项目的主页在淘蝌蚪上。服务端、客户端、javadoc都包含在内。

  • 淘宝消息中间件Metamorphosis开源

    Metamorphosis是一个高性能、高可用、可扩展的分布式消息中间件,类似于LinkedIn的Kafka,具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用于大吞吐量、顺序消息、广播和日志数据传输等场景,在淘宝和...

  • 淘宝开源分布式消息中间件Metamorphosis

    最近,淘宝开源了分布式消息中间件 Memorphosis项目 ,它是Linkedin开源MQ——Kafka的Java版本,针对淘宝内部应用做了定制和优化。 据了解,Metamorphosis(以下简称Meta)的设计原则包括: 消息都是持久的,...

  • 淘宝开源消息中间件-Metamorphosis

    淘宝开源消息中间件-Metamorphosis。 Gecko随之一并开源。 Oschina主页: http://www.oschina.net/p/metamorphosis

  • Metamorphosis分布式消息中间件

     Metamorphosis是淘宝开源的一个Java消息中间件。关于消息中间件,你应该听说过JMS(1)规范,以及一些开源实现,如ActiveMQ和HornetQ等。Metamorphosis也是其中之一。  Metamorphosis是一款完全的队列模型消息...

  • python消息中间件有哪些_消息中间件选型

    一、 分布式系统消息通信技术简介分布式系统消息通信技术主要包括以下几种:1.RPC(Remote Procedure Call Protocol).一般是C/S方式,同步的,跨语言跨平台,面向过程2.CORBA(Common Object Request Broker ...

  • python 消息中间件_消息中间件

    一、 分布式系统消息通信技术简介分布式系统消息通信技术主要包括以下几种:1.RPC(Remote Procedure Call Protocol).一般是C/S方式,同步的,跨语言跨平台,面向过程2.CORBA(Common Object Request Broker ...

  • 分布式消息中间件-Rocketmq

    消息中间件主要是实现分布式系统中解耦、异步消息、流量销锋、日志处理等场景,后面我也会结合一些场景进行探讨。现在生产中用的最多的消息队列有Activemq,rabbitmq,kafka,rocketmq等。  不过这个题目写的有点...

  • 消息队列中间件 MetaQ/RocketMQ

    简介—— 消息队列中间件 MetaQ/RocketMQ中间件 MetaQ 是一种基于队列模型的消息中间件,MetaQ 据说最早是受 Kafka 的影响开发的,第一版的名字 "metamorphosis",是奥地利作家卡夫卡的名作——《变形记》。...

  • 分布式开发--分布式消息中间件

    其中,服务器之间消息通讯这种功能广泛应用于这些中间件中,于是,将这种面向消息的中间件( Message Oriented Middleware , MOM )抽象出来,形成通用的消息中间件,成为业内主流。目前消息中间件的标准主要有...

  • 淘宝开源MQ——metamorphosis的github分支

    上周我在淘宝的同事开源了一个消息中间件metamorphosis,放在了淘蝌蚪上。我从淘蝌蚪的svn上fork了一个github的分支,放在了这里:1.主体工程:https://github.com/killme2008/Metamorphosis 2.示例项目:...

  • 分布式消息中间件 MetaQ (庄晓丹)

    MetaQ(全称Metamorphosis)是一个高性能、高可用、可扩展的分布式消息中间件,思路起源于LinkedIn的Kafka,但并不是Kafka的一个Copy。MetaQ具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用于大吞吐量...

  • MQ消息中间件了解

    MQ 消息中间件 Rabbit MQ AMQP协议 1、交换器 Exchange Direct(直连)数据的分发,交给不同的队列来处理 通过绑定路由键,生产者发送消息到MQ的时候提供routing key(即路由键),指定发送给某个队列,或者说是给...

  • 消息队列中间件记录

    消息队列有无数开源实现,一般没必要自己实现。zmq也好rabbitmq也好甚至redis也好,找一个合适的装上用就行 就好像rdbms/nosql一样。 技术都是解决问题的,消息队列解决的是将突发大量请求转换为后端能承受的队列...

  • 【RabbitMQ消息中间件】1.RabbitMQ简介

    遵循Message Queue规则开发出来的,具有消息队列特点的产品,都可以称之为“消息中间件”(JMS消息服务器)。目前业内有很多消息中间件产品,例如Apache出品的“ActiveMQ”和“Kafka”(分布式发布订阅消息系统)、...

  • 主流消息中间件 SOA\ESB

    IBM Oracle MicroSoft SoftWare AG Tibco 这几家的ESB占市场份额较高 (1)IBM WebSphere MQ (也称MQSeries)... (2)ActiveMQ JMS消息服务器 : http://www.oschina.net/p/activemq ActiveMQ 是Ap

  • 《淘宝消息中间件概述》2015-07-11

    1. 消息中间件简介 目前主要提供了无序事务性高性能消息队列Notify与有序高性能消息队列RocketMQ(MetaQ)两大类产品,目前RocketMQ已经开源(https://github.com/alibaba/RocketMQ),产品被包括核心交易在内的几乎...

  • 基于Linux V4L2视频库、ASLA高级声音框架的远程视频及语音聊天.zip

    基于Linux V4L2视频库、ASLA高级声音框架的远程视频及语音聊天

  • node-v8.7.0-x86.msi

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

  • node-v7.7.3-linux-armv6l.tar.gz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

Global site tag (gtag.js) - Google Analytics