mq
yswenli
关注socket通信、大型分布式平台
展开
-
消息队列一
消息队列一为什么要用Message Queue解耦 在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。消息队列在处理过程中间插入了一个隐含的、基于数据的接口层,两边的处理过程都要实现这一接口。这允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束冗余 有时在处理数据的时候处理过程会失败。除非数据被持久化,否则将永远丢失。消息队列把数据进行持久化直到它们已经被完全处理,通过这...原创 2018-03-24 17:39:12 · 114 阅读 · 0 评论 -
消息队列二
消息队列二常用Message Queue对比RabbitMQRabbitMQ是使用Erlang编写的一个开源的消息队列,本身支持很多的协议:AMQP,XMPP, SMTP, STOMP,也正因如此,它非常重量级,更适合于企业级的开发。同时实现了Broker构架,这意味着消息在发送给客户端时先在中心队列排队。对路由,负载均衡或者数据持久化都有很好的支持。RedisRedis是一个基于Key-Valu...原创 2018-03-24 17:39:41 · 99 阅读 · 0 评论 -
消息队列三
消息队列三Kafka简介Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下:以时间复杂度为O(1)的方式提供消息持久化能力,并保证即使对TB级以上数据也能保证常数时间的访问性能高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输支持Kafka Server间的消息分区,及分布式消息消费,同时保证每个partition内的消息顺序传输同时支持离线数据处理和实...原创 2018-03-24 17:40:19 · 151 阅读 · 0 评论 -
消息队列四
消息队列四数据持久化 Kafka大量依赖文件系统去存储和缓存消息。对于硬盘有个传统的观念是硬盘总是很慢,这使很多人怀疑基于文件系统的架构能否提供优异的性能。实际上硬盘的快慢完全取决于使用它的方式。设计良好的硬盘架构可以和内存一样快。在6块7200转的SATA RAID-5磁盘阵列的线性写速度差不多是600MB/s,但是随即写的速度却是100k/s,差了差不多6000倍。现代的操作系统都对次做了大量...原创 2018-04-21 17:40:56 · 135 阅读 · 0 评论 -
自已动手做高性能消息队列
前言 本人觉得码农的技术提升应该是从how to do到why do,而项目或产品都是从why do到how to do,所以呢下面先从大的方面介绍一下消息队列。 消息队列是分布式高并发面目中必不可少的一部分,随着互联网、云计算、大数据的使用,消息队列的应用越来越多,消息队列在系统的可伸缩性、稳定性、提升吞吐量等方面有着显著的作用;它主要的作用一般如下: 1...原创 2018-05-12 20:35:52 · 473 阅读 · 0 评论