المتطلبات الأساسية
الجواهر المطلوبة لتنفيذ الخادم:
- google-protobuf (الإصدار 3.2.X المستخدَم في هذا البرنامج التعليمي)
- grpc (الإصدار 1.2.X المستخدَم في هذا البرنامج التعليمي)
نزِّل تعريف الخدمة وأنشئ بنية الدليل التالية:
[base_dir]
├── certificates
├── lib
├── protos
└── booking_service.proto
└── server.rb
إنشاء مكتبات Ruby من وصف الواجهة:
$ cd [base_dir]
$ grpc_tools_ruby_protoc -I protos --ruby_out=lib --grpc_out=lib protos/booking_service.proto
تنفيذ الخادم
إذا كنت بحاجة إلى الرمز الأساسي، يُرجى طلبه من جهة التواصل التي تتعامل معها في Google.
اختبار الخادم بدون بروتوكول أمان طبقة النقل (TLS)
لإجراء الاختبار الأولي، يمكن إيقاف بروتوكول أمان طبقة النقل (TLS) باتّباع الخطوات التالية:
$ cd [base_dir]
$ ruby server.rb --disable_tls
هذا الإصدار غير مناسب للاستخدام في مرحلة الإنتاج.
ضبط شهادات الإصدار العلني
لتفعيل بروتوكول أمان طبقة النقل (TLS) على الخادم، يجب توفُّر الملفات التالية:
certificates/server.pem
سلسلة شهادات الخادم بتنسيق PEMcertificates/server.key
المفتاح الخاص لسلسلة شهادة الخادمcertificates/trusted_client_roots.pem
شهادات الجذر التي يتم الوثوق بها عند مصادقة العملاء
يتم استخدام مجموعة شهادات الجذر الموثوق بها للعميل عند مصادقة العميل. يمكنك اختيار الحصول على هذه المجموعة من الجذور الموثوق بها من جهة موثوق بها، مثل Mozilla، أو تثبيت مجموعة الجذور التي تنصح بها حاليًا هيئة Google Internet Authority (G2). في الحالة الأخيرة، قد تحتاج إلى تعديل الشهادة الجذر يدويًا في بعض الأحيان.
بنية الدليل النهائية
[base_dir]
├── certificates
├── server.pem
├── server.key
└── trusted_client_roots.pem
├── lib
├── booking_service_pb.rb
└── booking_service_services_pb.rb
├── protos
└── booking_service.proto
└── server.rb