أصدرت Cloudflare الكود المصدري لـ Pingora، وهو إطار عمل مكتوب بلغة Rust لإنشاء خدمات الشبكة

بينجورا

راية بينجورا

قبل بضعة أيام كشف النقاب عن Cloudflare، عبر تدوينة مدونة، قرارها بإصدار الكود المصدري لإطار عمل "Pingora" الخاص بها، مصممة خصيصا ل تطوير خدمات شبكة آمنة وعالية الأداء، وكذلك أنظمة الشبكات القابلة للبرمجة بلغة روست.

هذا الإطار يوفر حزم Rust الجاهزة التي تجعل من السهل إنشاء وكيل HTTP، العمل مع بروتوكولات الشبكة، وتحليل رؤوس HTTP، ومحاسبة حركة المرور والحد منها، وموازنة التحميل، وإدارة جدول التجزئة الموزع Ketama، والحفاظ على ذاكرة التخزين المؤقت في ذاكرة الوصول العشوائي، والمعالجة غير المتزامنة للمهلات. بالإضافة إلى دعم HTTP، يسمح Pingora بإنشاء خدمات باستخدام بروتوكولاته الخاصة أو UDP/TCP.

ما هو بينجورا؟

Pingora هو إطار عمل Rust متعدد الخيوط غير متزامن مصمم لبناء خدمات وكيل HTTP بأمان وكفاءة.. منذ إصداره، تم اختبار Pingora على نطاق واسع واستخدامه على الأنظمة عالية التحميل، كوكيل مستخدم في شبكة تسليم المحتوى الخاصة بـ Cloudflare، حيث قام بمعالجة أكثر من 40 مليون طلب في الثانية لأكثر من عام.

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

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

بين الفوائد الرئيسية لبينجورا، يبرز ما يلي:

  1. أمن الذاكرة: تقدم Pingora بديلاً أكثر أمانًا للذاكرة مقارنةً بالخدمات المكتوبة بلغة C/C++. وينتج عن ذلك احتمالية أقل لحدوث أخطاء في الترميز قد تؤدي إلى تعريض أمان النظام للخطر.
  2. الأداء الأمثل: بفضل بنيته متعددة الخيوط، فإن Pingora سريع وفعال، مما يوفر موارد وحدة المعالجة المركزية والذاكرة. وهذا مفيد بشكل خاص لأحمال العمل الحساسة للأداء والتكلفة.
  3. التخصيص المتقدم: واجهات برمجة التطبيقات التي توفرها Pingora قابلة للبرمجة بدرجة كبيرة، مما يسمح بالتخصيص الشامل لإنشاء بوابات مخصصة ومتقدمة أو موازنات تحميل.

بينجورا يقدم العديد من الميزات الرئيسية، مثل المعالجة متعددة الخيوط للطلبات في الوضع غير المتزامن، دعم HTTP/1 وHTTP/2 (مع خطط HTTP/3)، وكيل gRPC وWebSocket، وموازنات التحميل القابلة للتوصيل، وتغيير التكوين دون إعادة التشغيل، وتحديث التعليمات البرمجية دون قطع الاتصالات، وتحميل استراتيجيات التبديل في حالة الفشل (تجاوز الفشل)، التكامل مع أنظمة المراقبة والتسجيل (مثل Syslog، وPrometheus، وSentry، وOpenTelemetry)، ودعم تشفير TLS من خلال مكتبات OpenSSL وBoringSSL C.

ميزات بينجورا المميزة

  • دعم وكيل HTTP/1 وHTTP/2 وgRPC وwebsocket.
  • استراتيجيات موازنة التحميل وتجاوز الفشل القابلة للتخصيص.
  • التكامل مع مكتبات OpenSSL وBoringSSL من أجل الامتثال والأمان.
  • المرشحات وعمليات الاسترجاعات للتخصيص ومعالجة الطلب.
  • عمليات إعادة تشغيل رائعة دون توقف عن العمل للحصول على تحديثات سلسة.
  • التكامل مع أدوات المراقبة مثل Syslog وPrometheus وSentry وOpenTelemetry وغيرها.

أخيرًا، ذكرت Cloudflare أنها تتعاون مع مشروع Prossimo التابع لمجموعة أبحاث أمن الإنترنت (ISRG) لتعزيز اعتماد Pingora في البنية التحتية الحيوية للإنترنت، وبالتالي المساهمة في توفير إنترنت أكثر أمانًا وموثوقية للجميع.

إذا كنت مهتم بمعرفة المزيد عنهايجب أن تعلم أن الكود مكتوب بلغة Rust و نشرت وبموجب ترخيص Apache 2.0، يمكنك أيضًا الرجوع إلى منشور Cloudflare في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.