必要條件
伺服器實作作業所需的寶石:
- 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
:PEM 中的伺服器憑證鏈結 格式certificates/server.key
伺服器憑證鏈結的私密金鑰certificates/trusted_client_roots.pem
驗證用戶端時信任的根憑證
驗證 用戶端。您可以選擇向授權機構取得這組信任的根憑證 例如 Mozilla,也可以安裝 Google 網際網路主管機關目前建議的根層級 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