menuTicketing

قواعد الإعداد

  • يجب أن تتضمّن peers قيمة self إلزاميًا، ويجب سرد عقدتين على الأقل (وإلا يحدث ذعر (panic) عند الإقلاع).
  • عنوان الاستماع (listen) هو socket.bind (والقيمة الافتراضية 0.0.0.0)، أما عنوان الإعلان (advertise) فهو self. إذا كانت العقدة خلف جدار حماية أو NAT، فيجب أن يحتوي self على عنوان يمكن للعقد الأخرى الاتصال به فعليًا.
  • يُؤخذ المنفذ من self. في وضع العنقود، يتم تجاهل متغير البيئة PORT، ويصبح منفذ self هو منفذ الاستماع.
  • ترتيب peers يمثّل أولوية الترقية (الأول هو الأعلى أولوية).
toml
# ملف 10.0.0.1 ticketing.toml
[cluster]
self  = "10.0.0.1:5225"
peers = ["10.0.0.1:5225", "10.0.0.2:5225"]
toml
# ملف 10.0.0.2 ticketing.toml — peers متطابق، self فقط مختلف
[cluster]
self  = "10.0.0.2:5225"
peers = ["10.0.0.1:5225", "10.0.0.2:5225"]

يقوم العميل (الوسيط/broker) بتسجيل كلا العنوانين ليتم التحويل التلقائي بينهما عند حدوث عطل:

rust
TicketBroker::connect(&["10.0.0.1:5225", "10.0.0.2:5225"]);

للحصول على أوامر النشر الفعلية، راجع صفحة نشر خادم Ticketing.