您好,登錄后才能下訂單哦!
這篇文章主要介紹“Web RPC有什么用”,在日常操作中,相信很多人在Web RPC有什么用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Web RPC有什么用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
RPC 大家經常會聽到有人提起,但是 RPC 到底是什么東西貌似沒有人認真的解釋和回答過。(有也當做沒看見,不然我還寫個啥)
RPC 是 Remote Procedure Call 英文的縮寫,即遠程過程調用,也可以稱之為遠程程序調用。
它是一個計算機通信協議,這個協議允許運行在一臺計算機的程序調用另一臺計算機的子程序。
在一臺計算機中,我們可以直接通過代碼調用并且傳輸數據,或者使用多個程序組成整體,實現一個功能。
在多臺計算機中我們如何使用這種調用機制?
將一臺計算機中的調用機制推廣到多臺計算機中,就是使用多臺計算機中的多個程序實現一個功能(聽著是不是有點像我們的分布式爬蟲)
在上述的過程當中,調用的一方發起遠程過程調用,然后調用這方的環境掛起,參數通過網絡傳遞給被調用方,被調用的一方執行程序,當程序執行完成后,產生的結果再通過網絡回傳給調用的一方,調用的一方恢復繼續執行。這樣一種原型思想,就是我們所說的 RPC 遠程過程調用。
在目前的計算機應用當中,單機的性能很難滿足產品的需求,需要不斷的擴充多臺機器提升整體的性能。
同時為了充分利用這些集群里的計算機,需要對其從架構上進行劃分,以提供不同的服務,服務間相互調用完成整個產品的功能。RPC就能幫助我們解決這些服務間的信息傳遞和調用。
同時我們在 RPC 的概念也可以通過廣義與狹義兩個方面來理解。
廣義上我們可以將所有通過網絡來進行通訊調用的實現統稱為RPC。
按照這樣來理解的話,那我們發現HTTP其實也算是一種RPC實現。
狹義的 RPC 區別于 HTTP 的實現方式,在傳輸的數據格式上和傳輸的控制上獨立實現。
比如在機器間通訊傳輸的數據不采用HTTP協議的方式(分為起始行、header、body三部份),而是使用自定義格式的二進制方式。
我們更多時候談到的RPC都是指代這種狹義上的理解。
相對與傳統的 HTTP 的實現而言 RPC 的優點很明顯,發起 RPC 調用的一方,在編寫代碼時可忽略 RPC 的具體實現,如同編寫本地函數調用一樣,開發效率更高。
同樣的缺點也同樣突出,自己開發的 RPC 通用性不如 HTTP ,同樣是因為傳輸的數據不是 HTTP 協議格式。(機器間通訊傳輸的數據不采用HTTP協議的方式)
調用雙方都需要專門實現的通信庫,對于不同的編程開發語言,都要有相關實現。而 HTTP 作為一個標準協議,大部分的語言都已有相關的實現,通用性更好。
雖然各有優缺,但是 HTTP 和 RPC 的應用領域也并不相同:
HTTP 更多的面向用戶與產品服務器的通訊。
RPC 更多的面向產品內部服務器間的通訊。
到此,關于“Web RPC有什么用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。