• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種基于字節流的進程間通訊方法技術

    技術編號:8241495 閱讀:190 留言:0更新日期:2013-01-24 22:25
    一種基于字節流的進程間通訊方法,將系統中的核心進程創建為UnixSocket的服務器端,用于總體接收、協調、發送系統中各個進程產生的通信需求;將系統中的單個子進程創建為UnixSocket的客戶端;所述的客戶端作為發送進程時,首先對待發送的信息包進行字節化處理,然后通過和服務器建立的鏈接將信息包推送到核心進程;由核心進程根據信息字節流的字節長度、信息目的及信息體,將該信息包發送至目的進程中。本發明專利技術實現了消息的集中管理。另外,過程中對于不同的進程可能存在的狀態有:就緒、死亡、等待等不同的運行狀態。服務器對暫時不能送達的消息進行保存,等待客戶端進入運行狀態后將信息進行推送,實現了離線信息保存的功能。

    【技術實現步驟摘要】

    本專利技術涉及一種多進程間的通信技術。
    技術介紹
    目前,Socket通訊技術在Linux中得到最廣泛的應用。原有的IPC通訊技術在很大程度上逐漸退出開發舞臺,尤其是Java技術的興起更使的情況更為微妙。使得Socket優勢逐步凸顯,占據整個軟件開發應用領域的絕對主流地位。其設計和應用思想,更加符合人們的開發習慣。另外基于系統自身的Unix Socket通訊更是得到了最廣泛的認可。主流的數據庫、圖形界面等都基于這種途徑進行使用。
    技術實現思路
    本專利技術的目的在于A :實現基于Unix Socket的多進程通訊,實現關聯進程間的信息。B:實現所有消息的集中管理,即所有的消息都經過中心。中心對消息的最終目的進行選擇,并對消息的類型進行過濾。C :實現消息的離線保存,當消息的接收方上線后再發送該消息給接收者。為實現上述目的,本專利技術采用以下技術方案 本專利技術將系統中的核心進程創建為Unix Socket的服務器端,用于總體接收、協調、發送系統中各個進程產生的通信需求;將系統中的單個子進程創建為Unix Socket的客戶端;所述的客戶端作為發送進程時,首先對待發送的信息包進行字節化處理,然后通過和服務器建立的鏈接將信息包推送到核心進程;由核心進程根據信息字節流的字節長度、信息目的及信息體,將該信息包發送至目的進程中。所述的目的進程接收到信息包后,首先判斷是否屬于自己的信息包;若屬于該目的進程的信息包,則發送回復信息,所述的回復信息先通過字節化處理后被推送到核心進程,再由核心進程轉發給發送進程;若不屬于該目的進程的信息包,則將該信息包推送給服務器。所述發送進程將信息包推送給服務器后,服務器搜索不到該信息包的目的進程時,服務器對該信息包進行保存;直至服務器搜索到目的進程后,將該信息包推送下去。服務器搜索超時后,服務器仍然搜索不到信息包的目的進程,則拋棄該信息包。采用上述技術方案的本專利技術,將系統中的核心進程創建為Unix Socket的服務器端,將系統中的單個子進程創建為Unix Socket的客戶端,由服務器端實現對客戶端信息接收和對目的Client信息的發送。其中反向的客戶端對處理結果的返回使用同樣流程,從而實現了消息的集中管理。另外,過程中對于不同的進程可能存在的狀態有就緒、死亡、等待等不同的運行狀態。服務器對暫時不能送達的消息進行保存,等待客戶端進入運行狀態后將信息進行推送,實現了離線信息保存的功能。附圖說明圖I為本專利技術的通信流程圖。具體實施例方式本專利技術的核心思想在于將系統中的核心進程創建為Unix Socket的服務器端,用于總體接收、協調、發送系統中各個進程產生的通信需求;將系統中的單個子進程創建為Unix Socket的客戶端。客戶端作為發送進程時,首先對待發送的信息包進行字節化處理,然后通過和服務器建立的鏈接將信息包推送到核心進程;由核心進程根據信息字節流的字節長度、信息目的及信息體,將該信息包發送至目的進程中。如圖I所示,本專利技術主要分為一下幾大部分通訊的建立、消息的組織與發送、月艮務端消息接收分析與轉發、服務端消息的保存、客戶端消息的接收。通訊的建立服務器端綁定建立一個以sock path標識的Unix Socket的服務端, 客戶端建立這個Unix Socket的客戶端。客戶端接入服務端,完成通訊的建立服務器為接入的客戶端分配唯一的id。客戶端在和服務斷開連接后,客戶端接入的這個過程需要重新進行。同樣服務在異常后也需要重新進行服務的這個流程。消息的組織與發送發送進程將待發送的消息打上標簽,然后附上消息內容。即在消息的頭部增加消息的目的id、接收id,協議的版本、類型及數據長度。因為整體的消息是按照字節流發送的,所以必須要有數據長度。其中,使用的id為客戶端接入服務時分配的id。服務端消息接收分析與轉發服務端接收到消息后,首先根據數據長度獲取完整的通訊消息。然后根據消息的類型識別消息的處理流程。最好根據目的id判斷該消息是否進入保存流程或者直接進行發送。服務端消息的保存服務端在進行數據發送前,先根據通訊消息攜帶的目的id搜索該消息的目的進程。如果找不到目的進程,或者目的進程不在線,就認為這是一條需要保存的消息,等待該目的進程的設備上線后將該消息推送下去。如果超時后該目的進程還沒有上線,就拋棄該消息。消息的最大保留條目為IOByte或者IKB內容。客戶端消息的接收目的進程根據通訊消息的長度,對消息進行完整接收后。對目的id進行比對,如果是自己的消息就處理。如果非自己的消息重新將消息推送會服務器端。權利要求1.,其特征在于將系統中的核心進程創建為UniXSocket的服務器端,用于總體接收、協調、發送系統中各個進程產生的通信需求;將系統中的單個子進程創建為Unix Socket的客戶端;所述的客戶端作為發送進程時,首先對待發送的信息包進行字節化處理,然后通過和服務器建立的鏈接將信息包推送到核心進程;由核心進程根據信息字節流的字節長度、信息目的及信息體,將該信息包發送至目的進程中。2.根據權利要求I所述的基于字節流的進程間通訊方法,其特征在于所述的目的進程接收到信息包后,首先判斷是否屬于自己的信息包;若屬于該目的進程的信息包,則發送回復信息,所述的回復信息先通過字節化處理后被推送到核心進程,再由核心進程轉發給發送進程;若不屬于該目的進程的信息包,則將該信息包推送給服務器。3.根據權利要求I所述的基于字節流的進程間通訊方法,其特征在于所述發送進程將信息包推送給服務器后,服務器搜索不到該信息包的目的進程時,服務器對該信息包進行保存;直至服務器搜索到目的進程后,將該信息包推送下去。4.根據權利要求3所述的基于字節流的進程間通訊方法,其特征在于服務器搜索超時后,服務器仍然搜索不到信息包的目的進程,則拋棄該信息包。全文摘要,將系統中的核心進程創建為UnixSocket的服務器端,用于總體接收、協調、發送系統中各個進程產生的通信需求;將系統中的單個子進程創建為UnixSocket的客戶端;所述的客戶端作為發送進程時,首先對待發送的信息包進行字節化處理,然后通過和服務器建立的鏈接將信息包推送到核心進程;由核心進程根據信息字節流的字節長度、信息目的及信息體,將該信息包發送至目的進程中。本專利技術實現了消息的集中管理。另外,過程中對于不同的進程可能存在的狀態有就緒、死亡、等待等不同的運行狀態。服務器對暫時不能送達的消息進行保存,等待客戶端進入運行狀態后將信息進行推送,實現了離線信息保存的功能。文檔編號G06F9/54GK102890644SQ20111020275公開日2013年1月23日 申請日期2011年7月20日 優先權日2011年7月20日專利技術者賈小波, 嚴濤, 惠作奎, 李偉, 陳啟航, 張曉飛 申請人:鄭州威科姆科技股份有限公司本文檔來自技高網...

    【技術保護點】
    一種基于字節流的進程間通訊方法,其特征在于:將系統中的核心進程創建為Unix?Socket的服務器端,用于總體接收、協調、發送系統中各個進程產生的通信需求;將系統中的單個子進程創建為Unix?Socket的客戶端;所述的客戶端作為發送進程時,首先對待發送的信息包進行字節化處理,然后通過和服務器建立的鏈接將信息包推送到核心進程;由核心進程根據信息字節流的字節長度、信息目的及信息體,將該信息包發送至目的進程中。

    【技術特征摘要】

    【專利技術屬性】
    技術研發人員:賈小波嚴濤惠作奎李偉陳啟航張曉飛
    申請(專利權)人:鄭州威科姆科技股份有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 无码国产精品一区二区高潮| 亚洲av无码专区在线播放| 精品无码久久久久久尤物| 98久久人妻无码精品系列蜜桃| 色综合久久久久无码专区 | av潮喷大喷水系列无码| 尤物永久免费AV无码网站| 无码少妇一区二区| 午夜亚洲av永久无码精品| 日韩一区二区三区无码影院| 国产精品无码制服丝袜 | 亚洲中文无码mv| 亚洲va无码专区国产乱码| 国产精品亚洲专区无码不卡| 无码国内精品久久综合88| 国产热の有码热の无码视频| 精品无码中出一区二区| 亚洲av午夜国产精品无码中文字| 中文无码成人免费视频在线观看| 久久中文字幕无码一区二区| 色情无码WWW视频无码区小黄鸭| heyzo专区无码综合| 亚洲人成网亚洲欧洲无码| 久久久久亚洲精品无码系列| 红桃AV一区二区三区在线无码AV| (无码视频)在线观看| 亚洲av无码日韩av无码网站冲| 无码一区二区三区老色鬼| 国产午夜无码精品免费看动漫| 国产精品99久久久精品无码 | 久久久久亚洲精品无码网址| 色综合无码AV网站| 无码中文字幕乱码一区| 亚洲精品无码av片| 亚洲Aⅴ在线无码播放毛片一线天 亚洲av成本人无码网站 | 亚洲成AV人片在线观看无码| 韩国19禁无遮挡啪啪无码网站| 日韩人妻无码精品系列| 97无码人妻福利免费公开在线视频| 国产成人无码精品一区不卡| 蕾丝av无码专区在线观看|