chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Http與RPC通信協(xié)議的區(qū)別

jf_78858299 ? 來源:CSDN ? 作者:深度Java ? 2023-02-13 15:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在開始討論這個話題之前我們先來認識一下傳統(tǒng)的開發(fā)模式。

OSI網(wǎng)絡(luò)結(jié)構(gòu)的七層模型

各層的具體描述如下:

第七層:應(yīng)用層 定義了用于在網(wǎng)絡(luò)中進行通信和數(shù)據(jù)傳輸?shù)?a target="_blank">接口 - 用戶程式;提供標準服務(wù),比如虛擬終端、文件以及任務(wù)的傳輸 和處理;

第六層:表示層 掩蓋不同系統(tǒng)間的數(shù)據(jù)格式的不同性; 指定獨立結(jié)構(gòu)的數(shù)據(jù)傳輸格式; 數(shù)據(jù)的編碼和解碼;加密和解密;壓縮和 解壓縮

第五層:會話層 管理用戶會話和對話; 控制用戶間邏輯連接的建立和掛斷;報告上一層發(fā)生的錯誤

第四層:傳輸層 管理網(wǎng)絡(luò)中端到端的信息傳送; 通過錯誤糾正和流控制機制提供可靠且有序的數(shù)據(jù)包傳送; 提供面向無連接的數(shù) 據(jù)包的傳送;

第三層:網(wǎng)絡(luò)層 定義網(wǎng)絡(luò)設(shè)備間如何傳輸數(shù)據(jù); 根據(jù)唯一的網(wǎng)絡(luò)設(shè)備地址路由數(shù)據(jù)包;提供流和擁塞控制以防止網(wǎng)絡(luò)資源的損耗

第二層:數(shù)據(jù)鏈路層 定義操作通信連接的程序; 封裝數(shù)據(jù)包為數(shù)據(jù)幀; 監(jiān)測和糾正數(shù)據(jù)包傳輸錯誤

第一層:物理層 定義通過網(wǎng)絡(luò)設(shè)備發(fā)送數(shù)據(jù)的物理方式; 作為網(wǎng)絡(luò)媒介和設(shè)備間的接口;定義光學、電氣以及機械特性。

在上述7層中,http協(xié)議是應(yīng)用層協(xié)議。HTTP協(xié)議是超文本傳送協(xié)議(HyperText Transfer Protocol)的縮寫,它是萬維網(wǎng)(World Wide Web,www,也簡稱為Web)的基礎(chǔ)。HTTP協(xié)議設(shè)計之初就是為了實現(xiàn)Web的想法。HTTP協(xié)議位于TCP/IP協(xié)議棧的應(yīng)用層?;贖TTP協(xié)議的客戶/服務(wù)器模式的信息交換過程,分四個過程:建立連接、發(fā)送請求信息、發(fā)送響應(yīng)信息、關(guān)閉連接。

而關(guān)于RPC的基本概念介紹如下:

英文原義:Remote Procedure Call Protocol

中文釋義:(RFC-1831)遠過程調(diào)用協(xié)議

注解:一種通過網(wǎng)絡(luò)從遠程計算機程序上請求服務(wù),而不需要了解底層網(wǎng)絡(luò)技術(shù)的協(xié)議。RPC協(xié)議假定某些傳輸協(xié)議的存在,如TCP或UDP,為通信程序之間攜帶信息數(shù)據(jù)。在OSI網(wǎng)絡(luò)通信模型中,RPC跨越了傳輸層和應(yīng)用層。RPC使得開發(fā)包括網(wǎng)絡(luò)分布式多程序在內(nèi)的應(yīng)用程序更加輕易。

RPC采用客戶機/服務(wù)器模式。請求程序就是一個客戶機,而服務(wù)提供程序就是一個服務(wù)器。首先,調(diào)用進程發(fā)送一個有進程參數(shù)的調(diào)用信息到服務(wù)進程,然后等待應(yīng)答信息。在服務(wù)器端,進程保持睡眠狀態(tài)直到調(diào)用信息的到達為止。當一個調(diào)用信息到達,服務(wù)器獲得進程參數(shù),計算結(jié)果,發(fā)送答復信息,然后等待下一個調(diào)用信息,最后,客戶端調(diào)用過程接收答復信息,獲得進程結(jié)果,然后調(diào)用執(zhí)行繼續(xù)進行。

RPC信息協(xié)議由兩個不同結(jié)構(gòu)組成:調(diào)用信息和答復信息。

二者的聯(lián)系是:

RPC OVER HTTP

Microsoft RPC-over-HTTP 部署(RPC over HTTP)允許RPC 客戶端安全和有效地通過Internet 連接到RPC 服務(wù)器程序并執(zhí)行遠程過程調(diào)用。這是在一個名稱為RPC-over-HTTP 代理,或簡稱為RPC 代理的中間件的幫助下完成的。

RPC 代理運行在IIS 計算機上。它接受來自Internet 的RPC 請求,在這些請求上執(zhí)行認證,檢驗和訪問檢查,如果請求通過所有的測試,RPC 代理將請求轉(zhuǎn)發(fā)給執(zhí)行真正處理的RPC 服務(wù)器。通過RPC over HTTP,RPC 客戶端不和服務(wù)器直接通信,它們使用RPC 代理作為中間件。

關(guān)于xml-rpc

1.1. xml rpc簡介

xml rpc是使用http協(xié)議做為傳輸協(xié)議的rpc機制,使用xml文本的方式傳輸命令和數(shù)據(jù)。

一個rpc系統(tǒng),必然包括2個部分:1.rpc client,用來向rpc server調(diào)用方法,并接收方法的返回數(shù)據(jù);2.rpc server,用于響應(yīng)rpc client的請求,執(zhí)行方法,并回送方法執(zhí)行結(jié)果。

1.2. xml rpc的可用版本

xml rpc client和xml rpc server都有很多版本的實現(xiàn)。一般而言,一個實現(xiàn)版本都會同時實現(xiàn)client/server。但由于都滿足xml rpc規(guī)范,從理論上講,任何一個版本的rpc client實現(xiàn)與任何一個版本的rpc server都能配套使用。

更進一步,由于xml rpc以xml文本的方式,使用http協(xié)議傳輸,所以與編程語言無關(guān)。例如:rpc client的已實現(xiàn)版本包括了:perl,php,python,c/c++,java,等等;rpc server的實現(xiàn)語言包括perl,java,等。

同一種編程語言所實現(xiàn)的版本也不止一個。例如java版的實現(xiàn)有:Marque的xmlrpc實現(xiàn)(http://xmlrpc.sourceforge.net/),apache的xmlrpc 實現(xiàn)(http://ws.apache.org/xmlrpc/)

1.3.xmlrpc的工作原理

完整的需要參考xmlrpc規(guī)范(http://www.xmlrpc.com/spec)

簡單描述:

rpcclient的工作原理:rpcclient根據(jù)URL找到rpcserver -> 構(gòu)造命令包,調(diào)用rpcserver上的某個服務(wù)的某個方法 -> 接收到rpcserver的返回,解析響應(yīng)包,拿出調(diào)用的返回結(jié)果。

rpcserver的工作原理:啟動一個webserver(在使用內(nèi)置的webserver的情況下) -> 注冊每個能提供的服務(wù),每個服務(wù)對應(yīng)一個Handler類 ->進入服務(wù)監(jiān)聽狀態(tài)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)傳輸
    +關(guān)注

    關(guān)注

    9

    文章

    2019

    瀏覽量

    66062
  • HTTP
    +關(guān)注

    關(guān)注

    0

    文章

    525

    瀏覽量

    33495
  • RPC
    RPC
    +關(guān)注

    關(guān)注

    0

    文章

    111

    瀏覽量

    11883
  • OSI
    OSI
    +關(guān)注

    關(guān)注

    0

    文章

    85

    瀏覽量

    15651
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    通信網(wǎng)絡(luò)技術(shù):RPC服務(wù)和HTTP服務(wù)的區(qū)別分析

    ! 本文簡單地介紹一下兩種形式的 C/S 架構(gòu),先說一下他們最本質(zhì)的區(qū)別,就是 RPC 主要是基于 TCP/IP 協(xié)議的,而 HTTP 服務(wù)主要是基于
    的頭像 發(fā)表于 11-26 13:52 ?2925次閱讀

    為什么有了HTTP,還需要RPC協(xié)議?

    為什么有了HTTP,還需要RPC協(xié)議呢?在進行說明之前,首先我們需要了解什么是HTTP協(xié)議,什么是RPC
    的頭像 發(fā)表于 08-14 10:05 ?1248次閱讀
    為什么有了<b class='flag-5'>HTTP</b>,還需要<b class='flag-5'>RPC</b><b class='flag-5'>協(xié)議</b>?

    Modbus通信協(xié)議教程

    Modbus通信協(xié)議教程Modbus通信協(xié)議教程Modbus通信協(xié)議教程
    發(fā)表于 12-08 14:14 ?76次下載

    什么是RPC?為什么需要RPC?

    首先要明確一點:RPC可以用HTTP協(xié)議實現(xiàn),并且用HTTP是建立在 TCP 之上最廣泛使用的 RPC,但是互聯(lián)網(wǎng)公司往往用自己的私有
    的頭像 發(fā)表于 04-16 12:49 ?1.5w次閱讀
    什么是<b class='flag-5'>RPC</b>?為什么需要<b class='flag-5'>RPC</b>?

    物聯(lián)網(wǎng)通信協(xié)議的種類與其區(qū)別

    物聯(lián)網(wǎng)通信協(xié)議種類繁多,不同層次的通信協(xié)議因硬件和連接設(shè)置而異,但在某些功能上是相同的,很多人很難區(qū)分。我們來比較一下這些通信協(xié)議區(qū)別
    發(fā)表于 06-25 09:42 ?3719次閱讀

    HTTPRPC

    TCP是傳輸層的協(xié)議,而基于TCP造出來的HTTP和各類RPC協(xié)議,它們都只是定義了不同消息格式的應(yīng)用層協(xié)議而已。
    的頭像 發(fā)表于 11-23 08:54 ?1201次閱讀
    <b class='flag-5'>HTTP</b>和<b class='flag-5'>RPC</b>

    HTTPRPC區(qū)別與聯(lián)系

    HTTPRPC的相同點:底層通訊都是基于socket,都可以實現(xiàn)遠程調(diào)用,都可以實現(xiàn)服務(wù)調(diào)用服務(wù)。
    的頭像 發(fā)表于 11-23 08:55 ?2173次閱讀
    <b class='flag-5'>HTTP</b>和<b class='flag-5'>RPC</b>的<b class='flag-5'>區(qū)別</b>與聯(lián)系

    通信協(xié)議中的HTTP、TCP、UDP你了解多少(上)

    TCP HTTP UDP: 都是通信協(xié)議,也就是通信時所遵守的規(guī)則,只有雙方按照這個規(guī)則“說話”,對方才能理解或為之服務(wù)。
    的頭像 發(fā)表于 02-13 14:19 ?1198次閱讀
    <b class='flag-5'>通信協(xié)議</b>中的<b class='flag-5'>HTTP</b>、TCP、UDP你了解多少(上)

    通信協(xié)議的作用、類型及優(yōu)缺點

      通信協(xié)議是指在計算機網(wǎng)絡(luò)中,為了使不同的計算機或網(wǎng)絡(luò)設(shè)備之間能夠相互通信而制定的一套規(guī)則和標準。通信協(xié)議規(guī)定了數(shù)據(jù)傳輸?shù)母袷?、傳輸速率、傳輸控制、錯誤檢測和糾正等方面的內(nèi)容,以確保數(shù)據(jù)能夠正確、高效地傳輸。常見的
    發(fā)表于 05-10 16:09 ?6117次閱讀

    RPC接口與HTTP接口哪一個更好?

    HTTP接口和RPC接口都是生產(chǎn)上常用的接口,顧名思義,HTTP接口使用基于HTTP協(xié)議的URL傳參調(diào)用,而
    發(fā)表于 06-13 09:18 ?1698次閱讀
    <b class='flag-5'>RPC</b>接口與<b class='flag-5'>HTTP</b>接口哪一個更好?

    基于Client/Server架構(gòu)的HTTP接口和RPC接口

    HTTP接口和RPC接口都是生產(chǎn)上常用的接口,顧名思義,HTTP接口使用基于HTTP協(xié)議的URL傳參調(diào)用,而
    發(fā)表于 06-13 09:18 ?986次閱讀
    基于Client/Server架構(gòu)的<b class='flag-5'>HTTP</b>接口和<b class='flag-5'>RPC</b>接口

    RPC接口和HTTP接口的區(qū)別與聯(lián)系

    ? HTTP服務(wù) RPC接口和HTTP接口的區(qū)別與聯(lián)系 參考文獻 ? HTTP接口和RPC接口都
    的頭像 發(fā)表于 06-17 14:54 ?2247次閱讀
    <b class='flag-5'>RPC</b>接口和<b class='flag-5'>HTTP</b>接口的<b class='flag-5'>區(qū)別</b>與聯(lián)系

    什么是HTTP協(xié)議?什么是RPC協(xié)議?二者如何選擇使用?

    為什么有了HTTP,還需要RPC協(xié)議呢?在進行說明之前,首先我們需要了解什么是HTTP協(xié)議,什么是RPC
    的頭像 發(fā)表于 08-11 09:25 ?3000次閱讀
    什么是<b class='flag-5'>HTTP</b><b class='flag-5'>協(xié)議</b>?什么是<b class='flag-5'>RPC</b><b class='flag-5'>協(xié)議</b>?二者如何選擇使用?

    RPC 和 REST 區(qū)別是什么

    01. 既 REST ,何 RPC ? 在 OpenStack 里的進程間通信方式主要有兩種,一種是基于HTTP協(xié)議的RESTFul API方式,另一種則是
    的頭像 發(fā)表于 11-02 10:40 ?3676次閱讀
    <b class='flag-5'>RPC</b> 和 REST <b class='flag-5'>區(qū)別</b>是什么

    IOT(物聯(lián)網(wǎng))的七大通信協(xié)議Http協(xié)議

    一、什么是http協(xié)議?嵌入式HTTP協(xié)議是一種輕量級的通信協(xié)議,專為嵌入式系統(tǒng)設(shè)計,用于實現(xiàn)設(shè)備與互聯(lián)網(wǎng)之間的
    的頭像 發(fā)表于 05-24 08:11 ?3014次閱讀
    IOT(物聯(lián)網(wǎng))的七大<b class='flag-5'>通信協(xié)議</b>之<b class='flag-5'>Http</b><b class='flag-5'>協(xié)議</b>