gRPC
gRPC ( اختصار متكرر لـ gRPC Remote Procedure Calls [ 2 ] ) هو إطار عمل متعدد المنصات عالي الأداء لاستدعاء الإجراءات عن بُعد (RPC). تم تطوير gRPC في البداية بواسطة جوجل ، ولكنه مفتوح المصدر ويُستخدم في العديد من المؤسسات. تتراوح حالات استخدامه من الخدمات المصغرة إلى "الميل الأخير" للحوسبة (الهواتف المحمولة، والويب، وإنترنت الأشياء).
يستخدم gRPC بروتوكول HTTP/2 للنقل، وبروتوكول Buffers كلغة لوصف الواجهة ، ويوفر ميزات مثل المصادقة، والبث ثنائي الاتجاه، والتحكم في التدفق ، والربط المحظور أو غير المحظور، والإلغاء، والمهلات الزمنية. كما يُنشئ روابط عميل وخادم متعددة المنصات للعديد من اللغات. تشمل سيناريوهات الاستخدام الأكثر شيوعًا ربط الخدمات في بنية الخدمات المصغرة، أو ربط عملاء الأجهزة المحمولة بخدمات الواجهة الخلفية. [ 3 ]
إن استخدام gRPC لمقاطع HTTP يجعل من المستحيل تنفيذ عميل gRPC في متصفح، مما يتطلب بدلاً من ذلك استخدام وكيل. [ 4 ]
تاريخ
منذ حوالي عام 2001، أنشأت جوجل بنية تحتية عامة للأغراض العامة لبروتوكول RPC تُسمى Stubby لربط العدد الكبير من الخدمات المصغرة التي تعمل داخل مراكز بياناتها وعبرها . [ 5 ] في مارس 2015، قررت جوجل بناء الإصدار التالي من Stubby وجعله مفتوح المصدر. وكانت النتيجة gRPC.
المصادقة
يدعم gRPC استخدام بروتوكول أمان طبقة النقل (TLS) والمصادقة القائمة على الرموز المميزة. يجب أن يستخدم الاتصال بخدمات جوجل بروتوكول TLS. يوجد نوعان من بيانات الاعتماد: بيانات اعتماد القناة وبيانات اعتماد المكالمة.
بالنسبة للتفويض القائم على الرموز المميزة، يوفر gRPC معترض الخادم [ 6 ] ومعترض العميل. [ 7 ]
التشفير
يستخدم gRPC بروتوكول المخازن المؤقتة لترميز البيانات. يوفر بروتوكول المخازن المؤقتة تنسيقًا تسلسليًا ولغة تعريف واجهة. [ 8 ]
الاختبار
تتضمن بعض أدوات البرمجيات المستخدمة لاختبار تطبيقات gRPC كلاً من Postman و ezy و Insomnia و Step CI .
التبني
تستخدم العديد من المنظمات gRPC، بما في ذلك Uber ، [ 11 ] Square ، Netflix ، IBM ، CoreOS ، Docker ، CockroachDB ، Arista Networks ، Cisco ، Juniper Networks ، [ 12 ] Spotify ، [ 13 ] Zalando ، [ 14 ] Dropbox ، [ 15 ] وGoogle كمطور أصلي.
يستخدم مشروع u-bmc مفتوح المصدر بروتوكول gRPC كبديل لواجهة إدارة المنصة الذكية (IPMI). [ 16 ] في 8 يناير 2019، أعلنت Dropbox أن الإصدار التالي من "Courier"، إطار عمل RPC الخاص بها والذي يُمثل جوهر بنية الخدمات الموجهة (SOA)، سيتم نقله ليعتمد على gRPC، وذلك بشكل أساسي لتوافقه الجيد مع أطر عمل RPC المخصصة الحالية لديها. [ 17 ]
البدائل
انظر أيضاً
مراجع
- ↑ "إصدارات gRPC" . GitHub . تم الاسترجاع في 2026-04-05 .
- ↑ "الأسئلة الشائعة" . gRPC .
- ↑ "حول gRPC" . gRPC . تم الاسترجاع في 25-05-2021 .
- ↑ "حالة gRPC في المتصفح" . gRPC . 8 يناير 2019.
- ↑ "gRPC: إطار عمل RPC حقيقي على نطاق الإنترنت، أصبح الآن الإصدار 1.0 وجاهزًا للنشر في بيئات الإنتاج" . 24 أغسطس 2016. تم الاطلاع عليه بتاريخ 3 أبريل 2023 .
- ↑ "معترض خادم gRPC" . 27 فبراير 2023. مؤرشف من الأصل في 7 مارس 2023.
- ↑ "gRPC" . grpc.io. تم الاطلاع عليه بتاريخ 24-02-2020 .
- ↑ جيمس إن كيه. "مقارنة خدمات gRPC مع واجهات برمجة تطبيقات HTTP" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 24 فبراير 2020 .
- ↑ "إيزي على جيثب" . جيثب .
- ↑ "وثائق Step CI" .
- ↑ "gRPC في أوبر" . 19 مايو 2021.
- ↑ "gRPC" . grpc.io. تم الاطلاع عليه بتاريخ 24-02-2020 .
- ↑ "gRPC في Spotify" (ملف PDF) . jfokus.se . تم الاطلاع عليه بتاريخ 12 مايو 2020 .
- ^ "رادار زالاندو التقني" . opensource.zalando.com . تم الاسترجاع بتاريخ 2021-04-08 .
- ↑ "كيف قمنا بنقل Dropbox من Nginx إلى Envoy" . Dropbox.Tech . تم الاطلاع عليه بتاريخ 30 أكتوبر 2020 .
- ↑ "u-bmc" . GitHub.com . 5 أكتوبر 2022.
- ↑ نيغماتولين، روسلان؛ إيفانوف، أليكسي (2019-01-08). "Courier: Dropbox migration to gRPC" . تم الاسترجاع في 2019-01-09 .
روابط خارجية
- إجراء مكالمة عن بعد
- برنامج يستخدم ترخيص أباتشي
- برنامج جوجل
- برنامج مجاني مكتوب بلغة C++
- برنامج مجاني مكتوب بلغة بايثون
