ticketing.toml (वैकल्पिक) के प्रत्येक विकल्प को एनवायरनमेंट वैरिएबल के रूप में भी दिया जा सकता है। प्राथमिकता क्रम है एनवायरनमेंट वैरिएबल > ticketing.toml > डिफ़ॉल्ट मान, और की व बूलियन मानों में केस-सेंसिटिविटी नहीं होती। Docker इमेज scratch पर आधारित है, इसलिए कॉन्फ़िगरेशन को एनवायरनमेंट वैरिएबल के ज़रिए देना डिफ़ॉल्ट तरीका है (कॉन्फ़िगरेशन फ़ाइल इस्तेमाल करने के लिए इसे माउंट करके CONFIG से पथ बताएँ)।
| एनवायरनमेंट वैरिएबल | डिफ़ॉल्ट मान | विवरण |
|---|---|---|
PORT (SERVER_PORT) | 5225 | TCP लिसन पोर्ट। क्लस्टर मोड में अनदेखा होता है और CLUSTER_SELF का पोर्ट उपयोग होता है |
DEBUG (SERVER_DEBUG) | बिल्ड पर निर्भर | 1/true होने पर debug लॉग |
SOCKET_BIND | 0.0.0.0 | लिसन एड्रेस |
SOCKET_NODELAY | true | TCP_NODELAY |
SOCKET_READ_BUF_LEN | 4096 | प्रति-कनेक्शन रीड बफ़र (बाइट्स) |
SOCKET_REPLY_QUEUE | 1024 | प्रति-कनेक्शन रिस्पॉन्स क्यू लंबाई |
SOCKET_REPLY_BATCH | 64 | एक write में एकत्र करके भेजे जाने वाले अधिकतम रिस्पॉन्स |
SWEEP_INTERVAL_SECS | 5 | समाप्त हो चुकी कीज़ को साफ़ करने का अंतराल (सेकंड) |
CLUSTER_SELF | (कोई नहीं) | इस नोड का एडवर्टाइज़ एड्रेस host:port। मौजूद हो तो क्लस्टर मोड |
CLUSTER_PEERS | (कोई नहीं) | नोड पतों की सूची (कॉमा से अलग)। क्रम = प्रमोशन प्राथमिकता, self शामिल, 2 या अधिक |
CONFIG | ./conf/ticketing.toml | कॉन्फ़िगरेशन फ़ाइल का पथ |
[cluster] (या CLUSTER_*) मौजूद न हो, तो यह सिंगल नोड है। यह सबसे तेज़ है, लेकिन रीस्टार्ट के समय संक्षिप्त रुकावट आती है और स्थिति इन-मेमोरी होने के कारण रीस्टार्ट पर मिट जाती है (lease सुरक्षा-जाल का काम करता है)।CLUSTER_PEERS (प्राथमिकता क्रम में) और स्वयं की ओर संकेत करने वाला CLUSTER_SELF होता है। जीवित नोड्स में से सबसे उच्च प्राथमिकता वाला नोड एक्टिव बनता है और शेष नोड स्टैंडबाय के रूप में रीयल-टाइम रेप्लिकेशन प्राप्त करते हैं। विस्तृत कार्यसिद्धांत के लिए कार्यसिद्धांत और प्रोटोकॉल — सर्वर ↔ सर्वर देखें।Kubernetes क्लस्टर परिनियोजन में StatefulSet + हेडलेस सर्विस का उपयोग होता है। प्रत्येक पॉड को स्थिर DNS नाम (
ticketing-0.ticketing…,ticketing-1.ticketing…) मिलता है, इन नामों को प्राथमिकता क्रम मेंCLUSTER_PEERSमें डाला जाता है और प्रत्येक पॉड काCLUSTER_SELFdownward API (metadata.name) से स्वचालित रूप से डाला जाता है।
Ctrl+C) तो हैंडऑफ़ के ज़रिए स्टैंडबाय प्रमोट होता है और क्लाइंट उसमें स्थानांतरित हो जाते हैं।sarolab/ticketing · Github: saro-lab/ticketing