当前位置:SoccerSports

php任务[wù]队列

2025-02-23 20:40:08SoccerSports

如何设计一个MQ消息队列?1.先上图,明确一个消息发送和消费的流程2.消息消息首先需要定义消息协议,比如ActiveMQ,Stomp,XMPP等3.消息协议定义好了,明确消息队列需要满足什么场景是否需

如何设计一个MQ消息队列?

1.先上图,明确一个消息发送和消费的流程

2.澳门新葡京消息消息首先需要定义消息协议,比如{拼音:rú}ActiveMQ,Stomp,XMPP等

开云体育

3.消息协议定[拼音:dìng]义好了,明确消息队列需要满足什么场景

是否需要保证消息可靠性,如果需要就要做存储的高可用

华体会体育

是否需要支持同步和(拼音:hé)异步消息

澳门新葡京

是否需要保(读:bǎo)证消息的顺序

是否需要支持《拼音:chí》延时消息

具体可以参照很多开源实现的特性,比如Roc澳门永利ketMQ就是高可靠的,Kafka就是高吞吐量的,但是不是高[gāo]可靠的。

Kafka,Mq和Redis作为消息队列使用时的差异有哪些?

Kafka

kafka是个日志处理缓冲组《繁体:組》件,主要在大数据信息处理中使[拼音:shǐ]用。和传统的消息队(繁:隊)列相比简化了队列结构和功能,以文件流形式处理存储(持久化)消息(主要是日志)。

日志信息通《pinyin:tōng》常数据量巨大,处理组件一般会处理不过来,所以有了缓冲层kafka。kafka支持巨大的日志吞吐量。为了防止数据丢失,其消息被消费后不[练:bù]会直接丢弃,要多存储一段时间,等超过设置的时间阈值才会丢弃。这是mq和redis所不具备的。

主要特点澳门永利如下【读:xià】:

巨型存储量: 支持TB甚至PB级【繁体:級】别数据。

高吞吐,高gāo IO:一般配置的(读:de)服务器就可实现单机每秒100K条以(拼音:yǐ)上的消息传输。

消息分区[qū],分布式消费:能保证消息顺序[练:xù]传输。 支持离线数据处【chù】理(hadoop集群)和实时数据处理。

横向扩展:支持chí 在线水平扩展,以支持更大数据处理能力。

redis

redis是一个高性能的、原子操作的内存键值对nosql。支持高速访问,可用做消息队列的存储,但是【pinyin:shì】不具备消息队列的任何功能和逻辑,要做为消息队列来使用的话,队列功能和逻辑要yào 通过上层应用来自己实现。

MQ,消息队列

我们《繁:們》以RabbitMQ为例来做介《拼音:jiè》绍。它是用Erlang语言开发的开【pinyin:kāi】源消息队列,支持多种协议包括AMQP,XMPP, SMTP, STOMP,适合于企业级的开发。

MQ支持Broker构架,消息发送给(世界杯繁体:給)客户端时需要在中心队列排队。对路由,负载均衡或者数据持久化都有很好的支持。

其他更多消息队列

娱乐城

还有yǒu世界杯 ActiveMq,ZeroMq等,功能上大同小异。

有专门测试的结果表明{练:míng},并发【fā】吞吐TPS比较,ZeroMq 最好[hǎo],RabbitMq 次之, ActiveMq 最差。

更多信(拼音:xìn)息,请关注虫虫,一起讨论学习。

皇冠体育

本文链接:http://21taiyang.com/SoccerSports/8658082.html
php任务[wù]队列转载请注明出处来源