- शिप
- 4 सितंबर 2026 को 8:39 pm बजे UTC
- लेखक
- Kamo
- Commit
- 0d1d953
अगला एक नंगे प्रक्रिया के साथ SIGTERM संभालता है। उड़ान में था - एक फॉर्म पोस्ट, एक सर्वर एक्शन, एक स्ट्रीम आरएससी पेलोड, एक अपलोड। जब एक अनुरोध स्थायी मिलीसेकेंड; एक क्लस्टर पर अदृश्य नहीं है जो प्रत्येक धक्का पर तैनात करता है। स्क्रिप्ट/स्टैंडलोन-entry.cjs स्टैंडअलोन सर्वर को लपेटता है: SIGTERM पर यह स्वीकार करना बंद कर देता है, निष्क्रिय हो जाता है एक बार में रहते हैं, इसलिए उड़ान में कुछ भी नहीं के साथ एक फली अभी भी एक सेकंड में बाहर निकलती है, और चलने देता है अनुरोध एक टोपी के तहत समाप्त होता है जो समाप्ति के नीचे बैठता हैGracePeriodSeconds। से पोर्ट कामो-आंतरिक, जो इसे महीनों तक उत्पादन में चला गया है। इस तैनाती में कोई तत्परता जांच नहीं थी, इसलिए एक फली ने तैयार होने के तुरंत बाद अपने कंटेनर की गिनती की थी। प्रक्रिया शुरू हुई। अधिकतम 0 Kubernetes के साथ पढ़ता है कि "नई फली सेवा कर रही है" और पुराने एक सेवानिवृत्त - जबकि अगला अभी भी शुरू हो रहा है और इसके बंदरगाह को बाध्य नहीं किया है। अनुरोध लैंडिंग एक बंदरगाह पर कुछ भी नहीं सुन रहा था, जहां तैनाती पर रुकने वाले 502 लोग आए थे। /api/health उत्तर केवल इस फली के लिए और जानबूझकर कोई backend स्पर्श: एक तत्परता जांच यह तय करता है कि यह फली सेवा को छोड़ देता है और इसे एक बैकेंड में वायर करने से बैकेंड ब्लिप हो जाता है। यहां प्रत्येक पॉड की रोलिंग पुनः आरंभ। Dockerfile HEALTHCHECK ने /api/health को बताया है क्योंकि यह लिखा गया था; मार्ग नहीं था अस्तित्व में है, इसलिए जब तक यह वहाँ रहा है तब तक चेक विफल रहा है। प्रतिकृतियां 1 -> 2. सर्वर-साइड स्टेट रेडिस में रहता है, फली में नहीं, और कोई निर्धारित काम नहीं है डुप्लिकेट करने के लिए, इसलिए दूसरा प्रतिकृति कुछ भी नहीं बदलता है, इसके अलावा एक फली को खोने से एक आउटेज होने लगता है। एक प्रतिकृति में एक OOM हत्या, एक असफल जीवन जांच या एक नोड नाली के लिए नीचे पूरी बात ले लिया जब तक यह बूट करने के लिए लेता है। टोपोलॉजीस्प्रेडConstraints (पहले, अभी तक निष्क्रिय) दोनों को विभिन्न नोड्स पर रखें जहां क्लस्टर इसे प्रबंधित कर सकता है, और KlusterServices में एक PodDisruptionBudget एक नाली प्रतीक्षा करता है।.