HeadlinesBriefing favicon HeadlinesBriefing.com

هندسة معالجة المدفوعات على نطاق واسع في أمريكان إكسبريس

ByteByteGo •
×

هندسة معالجة المدفوعات على نطاق واسع في أمريكان إكسبريس

عندما يقوم العميل بالدفع، يتوقع أن تتم الموافقة على المعاملة أو رفضها على الفور تقريبًا. هذا المطلب الوحيد يحدد كيفية بناء معالجة المدفوعات بالكامل، حيث يجب إكمال العملية بأكملها خلال هذه النافذة الزمنية القصيرة. تحدثنا مع بن كين، المهندس المتميز في أمريكان إكسبريس، لفهم كيفية تعامل منصتهم مع هذا التحدي.

لفهم كيفية عمل ذلك، دعونا نتخيل ما يحدث عندما تصل معاملة إلى أمريكان إكسبريس. يتم توجيهها إلى واحدة من عدة خلايا مستقلة وتمر عبر سلسلة من الخدمات المصغرة. ومع ذلك، في منتصف الطريق، تبدأ إحدى هذه الخدمات في الفشل، ولا يزال العميل في محطة الدفع ينتظر. إعادة محاولة المعاملة داخل الخلية الفاشلة تحمل مخاطر واضحة. علاوة على ذلك، نقل المعاملة إلى خادم آخر هو مشكلة أصعب.

يتعامل فريق الهندسة في أمريكان إكسبريس مع هذا من خلال بنية قائمة على الخلايا تساعد في تقليل تأثير الانقطاع إلى الحد الأدنى. في محادثتنا مع فريق الهندسة في أمريكان إكسبريس، تعلمنا أن معظم الجهد الهندسي يذهب إلى الحفاظ على هذا العزل سليمًا. في تدفق دفع نموذجي، تقع أمريكان إكسبريس في منتصف السلسلة. يحتفظ بنك المستحوذ بعلاقة مع التاجر، ويرسل المعاملة إلى أمريكان إكسبريس، وتقوم أمريكان إكسبريس بتسليمها إلى البنك المصدر، الذي يدير رصيد الحساب.

في عام 2018، بدأت أمريكان إكسبريس في تحديث هذه المنصة إلى بنية تحتية سحابية أصلية. على الفور، أصبح من الواضح أن افتراضًا واحدًا يجب أن يتغير. بينما كانت الأنظمة القديمة تعمل على أجهزة مصممة للعمل المستمر، كانت البنية التحتية السحابية تتصرف بشكل مختلف. التصميم الذي تم اختياره في النهاية كان مدفوعًا بعقود من التفكير الداخلي. أشار بن إلى أنه في عصر SOA، كانت هذه الأنماط موجودة حتى قبل صياغة المصطلح الأكثر رسمية للبنية القائمة على الخلايا. في البنية القائمة على الخلايا، الخلية هي نسخة كاملة ومكتفية ذاتيًا من مجموعة معالجة المدفوعات، بما في ذلك الخدمات المصغرة وقواعد البيانات وDNS.

الكيانات الرئيسية: الشركات: أمريكان إكسبريس | الأشخاص: بن كين

الأسئلة الشائعة:

س: كيف تضمن أمريكان إكسبريس موثوقية معالجة المدفوعات على نطاق واسع؟

ج: تستخدم أمريكان إكسبريس بنية قائمة على الخلايا حيث تكون كل خلية نسخة كاملة ومكتفية ذاتيًا من مجموعة معالجة المدفوعات، بما في ذلك الخدمات المصغرة وقواعد البيانات وDNS. هذا التصميم يعزل الأعطال، لذلك إذا فشلت خدمة واحدة، يقتصر التأثير على تلك الخلية، مما يسمح بمعالجة المدفوعات بسرعة دون انقطاع على مستوى النظام بأكمله.