淘宝核心系统资深专家 余锋http://yufeng.info @淘宝褚霸 2012-08-10 我为什么要选择RabbitMQ 淘宝核心系统资深专家 余锋http://yufeng.info @淘宝褚霸 2012-08-10
十万英尺高度看RabbitMQ
MQ在云计算的地位
RabbitMQ大事记 2007年2月 1.0.0-alpha发布 5000行Erlang代码 2010年4月 LShift被SpringSource收购 2.8.5发布 2012年8月
RabbitMQ卖点 健壮 易于使用 高性能 强大开源社区支持 AMQP工作组成员,目前支持AMQP 0-9-1
RabbitMQ生态圈
显微镜看RabbitMQ
为什么要用Erlang实现 Erlang消息机制与AMQP极度吻合 高并发 时间检验的高可靠 高性能 集群易扩展 强大的管理功能 方便的问题定位支持
AMQP交互图
实现足够简单清晰
高并发的秘密
处处维稳
自我保护 AMQP协议级别流控 Erlang VM层面内存、CPU过载防护 集群层面容灾 预先警报
性能(单Q)
性能(8个Q)
集群(逻辑视图)
集群(物理布局)
高可用 集群无中心点,方便4层和7层流量切分 消息确认机制 新版本支持Mirrored queue
易用性 AMQP是工业标准 AMQP客户端无所不在 RabbitMQ各主流操作系统都有安装包 插件机制繁荣各种第三方扩展,监控完备 各种管理脚本,完善的日志 各种爽,忘却背后Erlang的存在
现实看RabbitMQ
阿里集团内部使用 MySQL平台化 旺旺平台 阿里云虚拟主机 …
存在问题 RabbitMQ CPU消耗过大,建议高配CPU 集群规模 使用误区 低并发 消息持久代价和平衡 高可用 推广阻力
技术支持 维护RabbitMQ源码,对内外提供技术支持 根据业务场景深度定制 输出最佳实践 http://mysql.taobao.org/index.php/Rabbitmq 根据业务场景深度定制 输出最佳实践
提问时间 谢谢大家!