溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

gRPC服務端創(chuàng)建流程是怎么樣的

發(fā)布時間:2022-01-05 15:02:09 來源:億速云 閱讀:180 作者:小新 欄目:云計算

小編給大家分享一下gRPC服務端創(chuàng)建流程是怎么樣的,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

gRPC服務端創(chuàng)建流程是怎么樣的

gRPC 服務端創(chuàng)建關鍵流程分析:

  1. NettyServer 實例創(chuàng)建:

    • gRPC 服務端創(chuàng)建,首先需要初始化 NettyServer,它是 gRPC 基于 Netty 4.1 HTTP/2 協(xié)議棧之上封裝的 HTTP/2 服務端。

    • NettyServer 實例由 NettyServerBuilder 的 buildTransportServer 方法構建,

    • NettyServer 構建完成之后,監(jiān)聽指定的 Socket 地址,即可實現(xiàn)基于 HTTP/2 協(xié)議的請求消息接入。

  2. 綁定 IDL 定義的服務接口實現(xiàn)類:

    • gRPC 與其它一些 RPC 框架的差異點是服務接口實現(xiàn)類的調(diào)用并不是通過動態(tài)代理和反射機制,而是通過 proto 工具生成代碼,

    • 在服務端啟動時,將服務接口實現(xiàn)類實例注冊到 gRPC 內(nèi)部的服務注冊中心上。

    • 請求消息接入之后,可以根據(jù)服務名和方法名,直接調(diào)用啟動時注冊的服務實例,而不需要通過反射的方式進行調(diào)用,性能更優(yōu)。

  3. gRPC 服務實例(ServerImpl)構建:

    • 例如 Netty 的線程池資源、gRPC 的線程池、內(nèi)部的服務注冊類(InternalHandlerRegistry)等,

    • ServerImpl 負責整個 gRPC 服務端消息的調(diào)度和處理,

    • 創(chuàng)建 ServerImpl 實例過程中,會對服務端依賴的對象進行初始化,

    • ServerImpl 初始化完成之后,就可以調(diào)用 NettyServer 的 start 方法啟動 HTTP/2 服務端,接收 gRPC 客戶端的服務調(diào)用請求。

以上是“gRPC服務端創(chuàng)建流程是怎么樣的”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI