国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

延時(shí)隊(duì)列的幾種實(shí)現(xiàn)方式 PHP使用Beanstalkd做任務(wù)隊(duì)列是?

PHP使用Beanstalkd做任務(wù)隊(duì)列是?Beanstalk是一種高性能的消息隊(duì)列中間件。這個(gè)博客將介紹beanstalk的用法。1、首先讓我們通過概念來了解Beanstalk的特性和工作場景。Be

PHP使用Beanstalkd做任務(wù)隊(duì)列是?

Beanstalk是一種高性能的消息隊(duì)列中間件。這個(gè)博客將介紹beanstalk的用法。

1、首先讓我們通過概念來了解Beanstalk的特性和工作場景。

Beanstalkd是一個(gè)輕量級消息中間件。它最大的特點(diǎn)是將自己定位為一個(gè)基于tube和job的工作隊(duì)列

beanstalkd支持任務(wù)優(yōu)先級、延遲、運(yùn)行時(shí)間和保留時(shí)間,能夠很好地支持分布式后臺任務(wù)和定時(shí)任務(wù)處理。

其內(nèi)部實(shí)現(xiàn)使用libevent,服務(wù)器客戶端使用類似memcached的輕量級通信協(xié)議,具有高性能。

雖然它是內(nèi)存隊(duì)列,但beanstalkd提供了binlog機(jī)制。重新啟動beanstalkd時(shí),可以從本地binlog恢復(fù)當(dāng)前任務(wù)狀態(tài)。

管道:管道與主題類似。beanstalk中可以支持多個(gè)管道。每個(gè)管道都有自己的生產(chǎn)者和消費(fèi)者。管道不會相互影響。

如何設(shè)計(jì)一個(gè)MQ消息隊(duì)列?

1. 在上圖中定義消息發(fā)送和消耗的過程

2。為消息定義消息協(xié)議,如ActiveMQ、stomp、XMPP等。定義消息協(xié)議,定義消息隊(duì)列需要滿足的場景

是否要保證消息的可靠性,必要時(shí)要保證存儲的高可用性

是否支持同步和異步消息

是否要保證消息的順序

是否需要延遲消息要支持

很多開源的實(shí)現(xiàn)功能可以參考詳細(xì)信息。例如,rocketmq是高度可靠的,Kafka是高吞吐量的,但不是高度可靠的。