tikv/raft-rs
الگوریتم اجماع توزیعشده Raft که به زبان Rust پیادهسازی شده است.
کاربرد:
این کتابخانه برای پیادهسازی الگوریتم Raft در سیستمهای توزیعشده استفاده میشه. Raft به ما کمک میکنه تا در یک خوشه از سرورها، توافق نظر رو روی دادهها و وضعیت سیستم برقرار کنیم. مناسب ساخت سیستمهای قابل اعتماد و تحمل خطا مثل پایگاههای داده توزیعشده، سیستمهای ذخیرهسازی و سرویسهای اورکستریت.
در چه شرایطی بهتره استفاده شود؟
وقتی نیاز داری یک سیستم توزیعشده بسازی که:
- باید در صورت خرابی چند نود، همچنان کار کنه ️
- نیاز به انتخاب رهبر (Leader) داره
- باید تغییرات وضعیت به صورت ایمن و سریع در کل خوشه منعکس شود
- میخوای از زبان Rust برای عملکرد بالا و ایمنی حافظه استفاده کنی
چند مثال از موارد استفاده:
- ساخت یک key-value store توزیعشده مثل TiKV
- مدیریت وضعیت در یک سیستم microservices
- پیادهسازی replicated state machines برای سیستمهای مالی یا حساس
- استفاده در پروژههای blockchain که نیاز به توافق دارن
- ##distributed
- ##Raft
- ##Rust
- ##consensus
- ##TiKV
- ##fault
- ##leader
- ##replication
- ##state
- ##high
