antirez / antirez/disque-module

Multiple DC support via availability zones replication

未關閉
#5 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
C
星號
471
分支
19
PR 合併指標
30 天內沒有已合併 PR

描述

For now Disque will consider a job replicated once there are N copies in th cluster. In case of multiple DCs in order to improve jobs safety especially if persistence is switched off, it is very important to also make sure there is at least one copy in a minimum number of AZ.

This could be implemented by having an AZ id configured in each Disque instance, up to AS 63 so that we can store then job replication info in little space using a bitmap.

ADDJOB will take an additional optional argument AZ to specify the minimum number of AZs that should have a copy. The replication acknowledge from nodes will include the AZ number so the receiving node can set the jobs AZ bits and understand if the replication was reached. If the first responders to arrive to N nodes as specified by REPLICATE where not in enough AZs, more nodes are dynamically added.

As an optimization Disque may want to remember the last AZ reported by each node to send the message to different AZs faster without using more copies than needed.

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。