MSMQ技術(shù)在Windows Mobile系統(tǒng)通信中應(yīng)用
引言
本文引用地址:http://butianyuan.cn/article/106704.htm隨著3G網(wǎng)絡(luò)技術(shù)、市場(chǎng)和政策的不斷成熟,移動(dòng)終端設(shè)備的使用量在急速增加,廣泛應(yīng)用各個(gè)領(lǐng)域。Windows Mobile是微軟為智能移動(dòng)終端設(shè)備開(kāi)發(fā)的操作系統(tǒng),Windows Mobile將用戶熟悉的桌面Windows體驗(yàn)擴(kuò)展到了移動(dòng)設(shè)備上。Windows Mobile為移動(dòng)終端設(shè)備之間的數(shù)據(jù)交換和信息共享提供了簡(jiǎn)單、安全的解決方案。在Windows Mobile平臺(tái)上的數(shù)據(jù)通信技術(shù)有Socket、Web Service、MSMQ(微軟消息隊(duì)列技術(shù))。Socket傳送數(shù)據(jù)會(huì)自定義傳送數(shù)據(jù)格式并且服務(wù)端要使用到多線程接收客戶端信息,編程復(fù)雜且不好控制;Web Service編程簡(jiǎn)單易控制,但是只可能調(diào)用服務(wù)端的函數(shù)不能實(shí)現(xiàn)服務(wù)端和客戶端相互通信;MSMQ是微軟提供的一種可以遠(yuǎn)程訪問(wèn)的異步通訊方式,支持轉(zhuǎn)發(fā),支持延時(shí)發(fā)送,并且具有較高安全性,是當(dāng)前Windows Mobile平臺(tái)上最可靠的數(shù)據(jù)通信方法。
MSMQ技術(shù)
Message Queue(微軟消息隊(duì)列)是在多個(gè)不同應(yīng)用程序(終端或服務(wù))之間實(shí)現(xiàn)相互通信的一種異步傳輸模式,相互通信的應(yīng)用程序可以分布于同一臺(tái)機(jī)器上,也可以分布于相連的網(wǎng)絡(luò)空間中的任一終端。消息是通信的雙方所需要傳遞的信息,它可以是各種對(duì)象,如文本、聲音和圖像等。消息最終的實(shí)現(xiàn)方式是由消息傳遞的雙方共同制定的協(xié)議來(lái)規(guī)定,這樣做的好處,既對(duì)數(shù)據(jù)進(jìn)行了簡(jiǎn)單的加密,也可以減輕系統(tǒng)通信的負(fù)擔(dān)。其實(shí)現(xiàn)原理是消息的發(fā)送者把自己想要發(fā)送的信息放入一個(gè)容器中(Message),然后將其保存到一個(gè)系統(tǒng)公用空間的消息隊(duì)列中;本地或者是異地的消息接收程序再?gòu)脑撽?duì)列中取出發(fā)給它的消息進(jìn)行處理。
由于采用的是異步通信方式,無(wú)論是發(fā)送程序還是接收程序都不用等待對(duì)方返回成功發(fā)送消息的標(biāo)志,就可以執(zhí)行余下的代碼,因而提高了系統(tǒng)的處理能力。當(dāng)信息傳送過(guò)程中,信息發(fā)送機(jī)制具有故障恢復(fù)能力;MSMQ的消息傳遞機(jī)制使得消息通信的雙方具有通過(guò)不同的物理平臺(tái)進(jìn)行通信的能力。在支持.net技術(shù)的操作系統(tǒng)上利用其提供的MSMQ功能,可以輕松創(chuàng)建或者刪除消息隊(duì)列,發(fā)送或者接收消息,并具有對(duì)消息隊(duì)列進(jìn)行管理。消息隊(duì)列是發(fā)送和接收消息的公用存儲(chǔ)空間,它可以存在于內(nèi)存中或者是物理文件中。
系統(tǒng)結(jié)構(gòu)與軟件配置
系統(tǒng)結(jié)構(gòu)
針對(duì)客車業(yè)生產(chǎn)現(xiàn)場(chǎng)數(shù)據(jù)采集系統(tǒng)實(shí)例,由于客車生產(chǎn)屬于混合流水生產(chǎn)行業(yè),工序和工藝路線復(fù)雜、人工參與生產(chǎn)多、客車比其他產(chǎn)品體積龐大,所以需要現(xiàn)場(chǎng)人員使用PDA掃描生產(chǎn)現(xiàn)場(chǎng)數(shù)據(jù)和上報(bào)生產(chǎn)進(jìn)度狀況。車間和廠區(qū)范圍大,車間環(huán)境復(fù)雜,整個(gè)網(wǎng)絡(luò)采用無(wú)線通信的方式。PDA中裝有Windows Mobile系統(tǒng),在PDA中可以安裝各種應(yīng)用程序,例如條碼掃描、車間物料供需程序和生產(chǎn)現(xiàn)場(chǎng)調(diào)度程序。在PDA上也可以擴(kuò)展外部設(shè)備,例如條碼掃描槍和微型打印機(jī)等。利用PDA的移動(dòng)性和比較強(qiáng)的數(shù)據(jù)處理能力可對(duì)現(xiàn)場(chǎng)數(shù)據(jù)進(jìn)行實(shí)時(shí)的采集和整理。將采集的現(xiàn)場(chǎng)數(shù)據(jù)上傳到數(shù)據(jù)采集服務(wù)器、生產(chǎn)追蹤服務(wù)器和生產(chǎn)調(diào)度服務(wù)器。
如圖1所示的系統(tǒng)硬件平臺(tái)主要由廠級(jí)數(shù)據(jù)中心的服務(wù)器、無(wú)線路由器和PDA數(shù)據(jù)采集器構(gòu)成,車間中根據(jù)生產(chǎn)工藝工序配置的多個(gè)PDA數(shù)據(jù)采集器,PDA上的掃描槍可以實(shí)時(shí)的采集現(xiàn)場(chǎng)數(shù)據(jù),PDA的上的處理程序?qū)⒉杉臄?shù)據(jù)進(jìn)行處理,然后通過(guò)多層無(wú)線路由器AP上傳到廠級(jí)數(shù)據(jù)中心服務(wù)器,每個(gè)PDA都有自己獨(dú)立的IP地址,服務(wù)器通過(guò)收發(fā)消息對(duì)上傳的數(shù)據(jù)進(jìn)行管理和向PDA發(fā)出指令。整個(gè)系統(tǒng)包括服務(wù)器程序和客戶端程序,通過(guò)MSMQ技術(shù)實(shí)現(xiàn)PDA與數(shù)據(jù)服務(wù)器的數(shù)據(jù)通信。
數(shù)字通信相關(guān)文章:數(shù)字通信原理
通信相關(guān)文章:通信原理
評(píng)論