什么是RPC協議?
RPC是一種遠程過程調用的協議,使用這種協議向另一臺計算機上的程序請求服務,不需要了解底層網絡技術的協議。
在 RPC 中,發出請求的程序是客戶程序,而提供服務的程序是服務器。
?
HTTP是一種超文本傳輸協議。是WWW瀏覽器和WWW服務器之間的應用層通訊協議。
?
RPC協議與HTTP協議的區別
1、RPC是一種API,HTTP是一種無狀態的網絡協議。RPC可以基于HTTP協議實現,也可以直接在TCP協議上實現。
2、RPC主要是用在大型網站里面,因為大型網站里面系統繁多,業務線復雜,而且效率優勢非常重要的一塊,這個時候RPC的優勢就比較明顯了。
HTTP主要是用在中小型企業里面,業務線沒那么繁多的情況下。
3、HTTP開發方便簡單、直接。開發一個完善的RPC框架難度比較大。
4、HTTP發明的初衷是為了傳送超文本的資源,協議設計的比較復雜,參數傳遞的方式效率也不高。開源的RPC框架針對遠程調用協議上的效率會比HTTP快很多。
5、HTTP需要事先通知,修改Nginx/HAProxy配置。RPC能做到自動通知,不影響上游。
6、HTTP大部分是通過Json來實現的,字節大小和序列化耗時都比Thrift要更消耗性能。RPC,可以基于Thrift實現高效的二進制傳輸。
?
SEO網站需要選擇怎么樣的的框架,需要多方面的評估,再對兩種開發框架進行比較,哪種最適合。不要為了使用RPC而每個項目都用RPC,而是要因地制宜,具體情況具體分析。
閱讀本文的人還可以閱讀: