日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 通信技術(shù) > 移動通信
[導(dǎo)讀]   幾種遠(yuǎn)程監(jiān)控通信方式的介紹 ? ? ? ?一.RPC   RPC使用C/S方式,采用http協(xié)議,發(fā)送請求到服務(wù)器,等待服務(wù)器返回結(jié)果。這個請求包括一個參數(shù)集和一個文本集,通

  幾種遠(yuǎn)程監(jiān)控通信方式的介紹 ? ? ? ?一.RPC

  RPC使用C/S方式,采用http協(xié)議,發(fā)送請求到服務(wù)器,等待服務(wù)器返回結(jié)果。這個請求包括一個參數(shù)集和一個文本集,通常形成“classname.methodname”形式。優(yōu)點是跨語言跨平臺,C端、S端有更大的獨立性,缺點是不支持對象,無法在編譯器檢查錯誤,只能在運行期檢查。

  二.Web Service

  Web Service提供的服務(wù)是基于web容器的,底層使用http協(xié)議,類似一個遠(yuǎn)程的服務(wù)提供者,比如天氣預(yù)報服務(wù),對各地客戶端提供天氣預(yù)報,是一種請求應(yīng)答的機制,是跨系統(tǒng)跨平臺的。就是通過一個servlet,提供服務(wù)出去。

  首先客戶端從服務(wù)器的到WebService的WSDL(網(wǎng)絡(luò)服務(wù)描述語言),同時在客戶端聲稱一個代理類(Proxy Class) 這個代理類負(fù)責(zé)與WebService服務(wù)器進(jìn)行Request 和Response 當(dāng)一個數(shù)據(jù)(XML格式的)被封裝成SOAP格式的數(shù)據(jù)流發(fā)送到服務(wù)器端的時候,就會生成一個進(jìn)程對象并且把接收到這個Request的SOAP包進(jìn)行解析,然后對事物進(jìn)行處理,處理結(jié)束以后再對這個計算結(jié)果進(jìn)行SOAP包裝,然后把這個包作為一個Response發(fā)送給客戶端的代理類(Proxy Class),同樣地,這個代理類也對這個SOAP包進(jìn)行解析處理,繼而進(jìn)行后續(xù)操作。這就是WebService的一個運行過程。

  Web Service大體上分為5個層次:

  1. Http傳輸信道

  2. XML的數(shù)據(jù)格式

  3. SOAP封裝格式(soap用來描述傳遞信息的格式)

  4. WSDL的描述方式

  5. UDDI UDDI是一種目錄服務(wù),企業(yè)可以使用它對Webservices進(jìn)行注冊和搜索

  三.RMI (Remote Method Invocation)

  RMI 采用stubs 和 skeletons來進(jìn)行遠(yuǎn)程對象(remote object)的通訊。stub 充當(dāng)遠(yuǎn)程對象的客戶端代理,有著和遠(yuǎn)程對象相同的遠(yuǎn)程接口,遠(yuǎn)程對象的調(diào)用實際是通過調(diào)用該對象的客戶端代理對象stub來完成的,通過該機制RMI就好比它是本地工作,采用tcp/ip協(xié)議,客戶端直接調(diào)用服務(wù)端上的一些方法。優(yōu)點是強類型,編譯期可檢查錯誤,缺點是只能基于Java語言,客戶機與服務(wù)器緊耦合。

  來看下基于RMI的一次完整的遠(yuǎn)程通信過程的原理:1. 客戶端發(fā)起請求,請求轉(zhuǎn)交至RMI客戶端的stub類;

  2. stub類將請求的接口、方法、參數(shù)等信息進(jìn)行序列化;

  3. 基于socket將序列化后的流傳輸至服務(wù)器端;

  4. 服務(wù)器端接收到流后轉(zhuǎn)發(fā)至相應(yīng)的skelton類;

  5. skelton類將請求的信息反序列化后調(diào)用實際的處理類;

  6. 處理類處理完畢后將結(jié)果返回給skelton類;

  7. Skelton類將結(jié)果序列化,通過socket將流傳送給客戶端的stub;

  8. stub在接收到流后反序列化,將反序列化后的java Object返回給調(diào)用者。

  四.JMS(Java?Messaging Service)

  JMS是Java的消息服務(wù),JMS的客戶端之間可以通過JMS服務(wù)進(jìn)行異步的消息傳輸。JMS支持兩種消息模型:Point-to-Point(P2P)和Publish/Subscribe(Pub/Sub),即點對點和發(fā)布訂閱模型。

  JMS呢,是實現(xiàn)java領(lǐng)域遠(yuǎn)程通信的一種手段和方法,基于JMS實現(xiàn)遠(yuǎn)程通信時和RPC是不同的,雖然可以做到RPC的效果,但因為不是從協(xié)議 級別定義的,因此我們不認(rèn)為JMS是個RPC協(xié)議,但它確實是個遠(yuǎn)程通信協(xié)議,在其他的語言體系中也存在著類似JMS的東西,可以統(tǒng)一的將這類機制稱為消 息機制,而消息機制呢,通常是高并發(fā)、分布式領(lǐng)域推薦的一種通信機制,這里的主要一個問題是容錯(詳細(xì)見ErLang論文)。

  來看JMS中的一次遠(yuǎn)程通信的過程:

  1. 客戶端將請求轉(zhuǎn)化為符合JMS規(guī)定的Message;

  2. 通過JMS API將Message放入JMS Queue(點對點)或Topic(發(fā)布/訂閱)中;

  3. 如為JMS Queue,則發(fā)送中相應(yīng)的目標(biāo)Queue中,如為Topic,則發(fā)送給訂閱了此Topic的JMS Queue。

  4. 處理端則通過輪訓(xùn)JMS Queue,來獲取消息,接收到消息后根據(jù)JMS協(xié)議來解析Message并處理。

  幾種遠(yuǎn)程監(jiān)控方式的比較   一、RPC與RMI

 ?。?)RPC 跨語言,而 RMI只支持Java。

 ?。?)RMI 調(diào)用遠(yuǎn)程對象方法,允許方法返回 Java 對象以及基本數(shù)據(jù)類型,而RPC 不支持對象的概念,傳送到 RPC 服務(wù)的消息由外部數(shù)據(jù)表示 (External Data RepresentaTIon,XDR) 語言表示,這種語言抽象了字節(jié)序類和數(shù)據(jù)類型結(jié)構(gòu)之間的差異。只有由 XDR 定義的數(shù)據(jù)類型才能被傳遞, 可以說 RMI 是面向?qū)ο蠓绞降?java?RPC 。

 ?。?)在方法調(diào)用上,RMI中,遠(yuǎn)程接口使每個遠(yuǎn)程方法都具有方法簽名。如果一個方法在服務(wù)器上執(zhí)行,但是沒有相匹配的簽名被添加到這個遠(yuǎn)程接口上,那么這個新方法就不能被RMI客戶方所調(diào)用。在RPC中,當(dāng)一個請求到達(dá)RPC服務(wù)器時,這個請求就包含了一個參數(shù)集和一個文本值,通常形成“classname.methodname”的形式。這就向RPC服務(wù)器表明,被請求的方法在為 “classname”的類中,名叫“methodname”。然后RPC服務(wù)器就去搜索與之相匹配的類和方法,并把它作為那種方法參數(shù)類型的輸入。這里的參數(shù)類型是與RPC請求中的類型是匹配的。一旦匹配成功,這個方法就被調(diào)用了,其結(jié)果被編碼后返回客戶方。

  二、JMS和RMI

  采用JMS 服務(wù),對象是在物理上被異步從網(wǎng)絡(luò)的某個JVM 上直接移動到另一個JVM 上(是消息通知機制)

  而RMI 對象是綁定在本地JVM 中,只有函數(shù)參數(shù)和返回值是通過網(wǎng)絡(luò)傳送的(是請求應(yīng)答機制)。

  RMI一般都是同步的,也就是說,當(dāng)client調(diào)用Server的一個方法的時候,需要等到對方的返回,才能繼續(xù)執(zhí)行client端,這個過程調(diào)用本地方法感覺上是一樣的,這也是RMI的一個特點。

  JMS 一般只是一個點發(fā)出一個Message到Message Server,發(fā)出之后一般不會關(guān)心誰用了這個message。

  所以,一般RMI的應(yīng)用是緊耦合,JMS的應(yīng)用相對來說是松散耦合應(yīng)用。

  三、Webservice與RMI

  RMI是在tcp協(xié)議上傳遞可序列化的java對象,只能用在java虛擬機上,綁定語言,客戶端和服務(wù)端都必須是java

  webservice沒有這個限制,webservice是在http協(xié)議上傳遞xml文本文件,與語言和平臺無關(guān)

  四、Webservice與JMS

  Webservice專注于遠(yuǎn)程服務(wù)調(diào)用,jms專注于信息交換。

  大多數(shù)情況下Webservice是兩系統(tǒng)間的直接交互(Consumer 《--》 Producer),而大多數(shù)情況下jms是三方系統(tǒng)交互(Consumer 《- Broker -》 Producer)。當(dāng)然,JMS也可以實現(xiàn)request-response模式的通信,只要Consumer或Producer其中一方兼任broker即可。

  JMS可以做到異步調(diào)用完全隔離了客戶端和服務(wù)提供者,能夠抵御流量洪峰; WebService服務(wù)通常為同步調(diào)用,需要有復(fù)雜的對象轉(zhuǎn)換,相比SOAP,現(xiàn)在JSON,rest都是很好的http架構(gòu)方案;(舉一個例子,電子商務(wù)的分布式系統(tǒng)中,有支付系統(tǒng)和業(yè)務(wù)系統(tǒng),支付系統(tǒng)負(fù)責(zé)用戶付款,在用戶在銀行付款后需要通知各個業(yè)務(wù)系統(tǒng),那么這個時候,既可以用同步也可以用異步,使用異步的好處就能抵御網(wǎng)站暫時的流量高峰,或者能應(yīng)對慢消費者。)

  JMS是java平臺上的消息規(guī)范。一般jms消息不是一個xml,而是一個java對象,很明顯,jms沒考慮異構(gòu)系統(tǒng),說白了,JMS就沒考慮非java的東西。但是好在現(xiàn)在大多數(shù)的jms provider(就是JMS的各種實現(xiàn)產(chǎn)品)都解決了異構(gòu)問題。相比WebService的跨平臺各有千秋吧。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

針對軌道交通領(lǐng)域封閉車廂環(huán)境中火災(zāi) 、異常震動等多重安全隱患 , 采用STM32F103C8T6微控制器作為主控芯片 ,設(shè)計了一種智能安防系統(tǒng)。該系統(tǒng)集成溫度DS18B20、煙霧MQ-2、震動SW-18010P及火焰?zhèn)鞲?..

關(guān)鍵字: STM32 傳感器 列車安防 遠(yuǎn)程監(jiān)控 物聯(lián)網(wǎng)

針對軌道交通領(lǐng)域封閉車廂環(huán)境中火災(zāi)、異常震動等多重安全隱患,采用STM32F103C8T6微控制器作為主控芯片,設(shè)計了一種智能安防系統(tǒng)。該系統(tǒng)集成溫度DS18B20、煙霧MQ-2、震動SW-18010P及火焰?zhèn)鞲衅?通過...

關(guān)鍵字: STM32 傳感器 列車安防 遠(yuǎn)程監(jiān)控 物聯(lián)網(wǎng)

在現(xiàn)代工業(yè)與信息化社會,電源系統(tǒng)的穩(wěn)定性和可靠性對于各種設(shè)備的正常運行至關(guān)重要。為了實現(xiàn)對電源系統(tǒng)的有效管理和維護(hù),設(shè)計一個具有遠(yuǎn)程監(jiān)控功能的電源系統(tǒng)顯得尤為重要。本文將詳細(xì)介紹一個通過網(wǎng)絡(luò)(如Ethernet或Wi-F...

關(guān)鍵字: 電源系統(tǒng) 遠(yuǎn)程監(jiān)控 ADC

今天,小編將在這篇文章中為大家?guī)矶滩ㄍㄐ诺挠嘘P(guān)報道,通過閱讀這篇文章,大家可以對它具備清晰的認(rèn)識,主要內(nèi)容如下。

關(guān)鍵字: 短波通信 遠(yuǎn)程通信

摘要:垃圾清掃車是高速公路清潔維護(hù)的重要工具 ,但目前監(jiān)管人員數(shù)量與設(shè)備數(shù)量相差較多 ,而 一人多機的 管理容易造成公路養(yǎng)護(hù)等成本加大 。鑒于此 ,利用MySql創(chuàng)建監(jiān)控系統(tǒng)數(shù)據(jù)庫 ,使用C#語言和VS2019搭建遠(yuǎn)程監(jiān)...

關(guān)鍵字: 遠(yuǎn)程監(jiān)控 清掃車 C#語言

摘要:為了實現(xiàn)對不同品牌機器人的實時監(jiān)控以及集中管理,實現(xiàn)機器人的互通互聯(lián),設(shè)計了一套基于NC-Link的機器人遠(yuǎn)程監(jiān)控系統(tǒng)。NC-Link適配器通過機器人的二次開發(fā)接口對機器人進(jìn)行數(shù)據(jù)采集,然后將采集到的數(shù)據(jù)通過htt...

關(guān)鍵字: 工業(yè)機器人 數(shù)據(jù)采集 遠(yuǎn)程監(jiān)控

摘要:設(shè)計了一種以西門子PLC為控制器的自動飲料售貨系統(tǒng),該系統(tǒng)具有節(jié)省人力物力、占地空間小、可靠性高等特點,同時能實現(xiàn)無人售貨、遠(yuǎn)程監(jiān)控等功能,并支持多種支付方式。

關(guān)鍵字: PLC 無人售貨 遠(yuǎn)程監(jiān)控

非授權(quán)用戶如何利用無線基礎(chǔ)設(shè)施進(jìn)行隱蔽通信...

關(guān)鍵字: 是德科技 遠(yuǎn)程通信 無線接入

摘 要:設(shè)計一種運行在嵌入式Linux平臺下的智能家居控制系統(tǒng)的實現(xiàn)方案,該系統(tǒng)采用ARM9微處理器S3C2440作 為主處理器,通過傳感器模塊對溫度、濕度、煙霧信息等進(jìn)行檢測;通辻USB接口的攝像頭采集視頻信息,采用J...

關(guān)鍵字: S3C2440 Linux 傳感器 GPRS 遠(yuǎn)程監(jiān)控

摘要:現(xiàn)代經(jīng)濟(jì)的快速發(fā)展和環(huán)境污染的日趨嚴(yán)重,使得工業(yè)污水對環(huán)境的影響問題日益突出。為此,文章開發(fā)了一種基于物聯(lián)網(wǎng)技術(shù)的刷卡排污遠(yuǎn)程監(jiān)測監(jiān)控采樣系統(tǒng)。該系統(tǒng)由中心平臺和現(xiàn)場控制設(shè)備組成,采用物聯(lián)網(wǎng)技術(shù)實現(xiàn)通訊,通過實時監(jiān)...

關(guān)鍵字: 物聯(lián)網(wǎng) 刷卡;排污 遠(yuǎn)程監(jiān)控 采樣
關(guān)閉