了解最新公司動態及行業資訊
隨著企業IT服務不斷演進,單臺服務器無法承受用戶日益增長的需求,需要多臺服務器組成“服務集群”對外提供服務。與此同時,隨著對產品需求的增加,商業服務將變得越來越膨脹。服務必須在架構中拆分。一個完整的大服務會分解成許多獨立的小服務。每個小服務將由一個獨立的進程處理。管理提供外部服務,稱為“微服務”。
當用戶的請求到來時it外包服務,我們需要將用戶的請求分散到多個服務中單獨處理,然后需要將這些子服務的結果匯總呈現給用戶。那么,服務交互的方式是需要解決的核心問題。RPC 的發明和存在是為了解決服務之間的信息交換。
什么是 RPC?
RPC( Call)是分布式系統中一種常見的通信方式,已經使用了40多年。當兩個物理上獨立的子系統需要進行邏輯關聯時,RPC 是常用的匹配技術之一。除了RPC,常見的多系統數據交互方案還有分布式消息隊列、HTTP請求調用、數據庫、分布式緩存等。
最流行的語言是RPC和HTTP
RPC和HTTP調用不是通過中間件,而是端到端系統的直接數據交換。HTTP 調用也可以認為是一種特殊的 RPC,只不過傳統意義上的 RPC 是指長連接的數據交換,而 HTTP 通常是指準備好的短鏈接。
RPC 在我們所知道的所有中間件中都有它。Nginx/Redis/MySQL/Dubbo//Spark/等重量級開源產品都是基于RPC技術構建的。RPC是指廣義的RPC,是一種分布式系統的通信技術。RPC 在技術方面比我們周圍的空氣更好。它無處不在,但很多人甚至不知道它的存在。Nginx 和 RPC
Ngnix 是互聯網公司使用最廣泛的代理服務器。它為后端分布式服務提供負載均衡,后端可以將多個后端服務地址聚合成一個地址對外服務。如您所見,它是技術堆棧中最流行的 Web 框架。
最流行的語言是RPC和HTTP
Nginx與后端服務的交互也基本理解為RPC數據交互。也許你會爭辯說 Nginx 和后端服務使用的是 HTTP 協議,這是一個短連接,而不是嚴格的 RPC 調用。
最流行的語言是RPC和HTTP
你是對的,但是 Nginx 和后端服務之間還有其他協議,比如 uwsgi 協議、協議等。這兩個協議都使用了比 HTTP 協議更高效的二進制協議。如上圖所示,uWSGI 是一個眾所周知的容器,可用于為啟動 uwsgi 協議的服務器啟動服務。
uwsgi 通信協議在語言系統中非常常見。如果企業使用語言棧構建 Web 服務,他們會在生產環境中部署應用程序,而不是使用 HTTP 協議或使用 uwsgi 協議連接到 Nginx。溝通。
最流行的語言是RPC和HTTP
協議在PHP語言系統中非常常見,Nginx和PHP-fpm進程之間經常使用協議進行通信。
和 RPC
在大數據技術領域,RPC也占有非常重要的地位。大量分布式技術被廣泛應用于大數據領域。分布式意味著節點的物理隔離。隔離意味著需要通信,而通信意味著有RPC。大數據比業務系統需要更多的通信,因此它更深入地進行數據通信優化。
最流行的語言是RPC和HTTP
例如,最常見的文件系統 hdfs 通常包含和多個。并通過稱為 RPC 的二進制協議進行通信。
和 RPC
在人工智能領域,RPC也很重要。如果一個知名的框架需要處理上億的數據it外包服務,就需要依賴分布式計算能力,需要做集群。當多個分布式節點需要集體智能時,就必須引入 RPC 技術。溝通。RPC 通信框架使用內部自研的 gRPC 框架。最流行的語言是RPC和HTTP