لماذا تحتاج المؤسسة إلى توأم، وكيف توفّره Mithril
الإنتاج هو المكان الخطأ لمعرفة من يستطيع الوصول إلى نظام حسّاس، أو كيف يبدو الرفض، أو ما إذا كان العنقود الجاري يطابق العنقود الذي أُعلن. يحتفظ التوأم بتلك الأسماء ولا يطبّق النتيجة. تجعل Mithril هذا التوأم وثيقة: تتركّب المكوّنات ذات النطاق المعكوس، ويعيد التشغيل الاستجابة والقرار، ويُفحص العنقود مقابل الملاحظة من دون أن يُشغَّل.
تُرجمت هذه المقالة آليًا.
تحتاج الشركة إلى توأم لأن الأسئلة التي تهم لا يمكن طرحها في الإنتاج. من يستطيع الوصول إلى نظام يحتفظ ببيانات العملاء. كيف يبدو الاستدعاء المرفوض حين تُستنفد الحصة. ما إذا كان العنقود الذي يعمل اليوم هو العنقود الذي أُعلن. الإنتاج هو المكان الذي يعيش فيه العملاء والمدفوعات والهوية بالفعل. استخدامه مكانًا لتعلّم تلك الإجابات يقرن الفضول بالانقطاع. وتجميد كل تغيير إلى أن تتأكد لجنة هو الفشل الآخر: تبقى المنظومة في حركة، ونموذجها لا يتحرك.
التوأم نسخة ثانية من تلك المنظومة بالأسماء نفسها وقاعدة صارمة تقضي بألا يُطبَّق شيء. الأصيل ودلو التخزين والطابور والعنقود واقعية بما يكفي للإجابة عن السؤال. ويتوقف الأثر عند النسخة. يستطيع الأمن والمنصة والعمارة أن يتدرّبوا على سماح ورفض وعطل وانحراف قبل أن يصل أيٌّ من ذلك إلى الحساب الذي يفوتر العملاء.
تجعل Mithril التوأم وثيقة، لا سحابة ثانية. كل جزء من المنظومة مكوّن يُسمّى بنطاقه المعكوس، والمكوّنات تتركّب. الهوية والتفويض والحصة والاتساق والعطل وTLS تقع تحت الخدمة التي تحتاجها. يسير التشغيل على تلك السلسلة ويعيد شيئين يستطيع المستدعي الاحتفاظ بهما: الاستجابة التي يراها العميل، والقرار الذي أنتجها. يبقى علم التطبيق false. لا يفتح وقت التشغيل أي مقبس، والوثيقة التي تسمّي مضيفًا حيًا أو سرًا تُرفض قبل أن تعمل.
يغطي الحد نفسه العنقود. يُغلَّف Docker وPodman بوصفهما وثيقة Mithril تبيّن أي الخدمات ينبغي أن توجد وكيف يعتمد بعضها على بعض. ينتج عرض تلك الوثيقة ملف Compose. ويقارن فحصها الإعلان بما يُلاحَظ فعلًا. لا يبدأ الفحص الحاويات. تحصل الشركة على بروفة لمنظومتها، إلى جانب المحركات التي تتحدث بروتوكولات السحابة بالفعل، مع سجل لما قُرّر وما تُرك عمدًا من دون تطبيق.