Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Multiple DC support via availability zones replication

Đang mở
#5 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
20/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
c
Lĩnh vực
distributed-systems

Hướng nghiên cứu

Bắt đầu bằng cách lần theo các entry point ADDJOB và REPLICATE cũng như các xác nhận replication được mô tả trong issue. Xác định cách các ID Availability Zone đã cấu hình, các giới hạn AZ, trạng thái bitmap và việc chọn node động tương tác với nhau. Hoàn thành có nghĩa là replication có thể yêu cầu các bản sao trải rộng trên số AZ tối thiểu được yêu cầu, kể cả khi persistence bị tắt.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

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.

Ngôn ngữ chính
C
Star
471
Fork
19
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của antirez/disque-module

Tất cả issue của antirez/disque-module

Issue tương tự

Thêm issue về C

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.