[發明專利]軟件系統內模塊高低版本通信兼容實現方法有效
| 申請號: | 202010753311.0 | 申請日: | 2020-07-30 |
| 公開(公告)號: | CN111858103B | 公開(公告)日: | 2022-08-16 |
| 發明(設計)人: | 楊帆;湯靜波 | 申請(專利權)人: | 南京甄視智能科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 南京行高知識產權代理有限公司 32404 | 代理人: | 王菊花 |
| 地址: | 211000 江蘇省*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 軟件 系統 模塊 高低 版本 通信 兼容 實現 方法 | ||
1.一種軟件系統內模塊高低版本通信兼容實現方法,其特征在于,包括以下步驟:
基于連續二進制內存塊以及內存塊疊加配置系統模塊之間的通信接口,通信接口包括三部分,分別為消息類型、消息體長度和消息體;其中:消息類型,表明該消息是什么功能請求類型;消息長度,表明消息體的長度;消息體,即通信內容的實體;
當系統業務量需要更多的字段時,新增新的結構體B,將新的結構體B的二進制內容追加到原消息體A的后面,將消息體整體長度變為原結構體A的二進制的長度加上新的結構體B的二進制的長度;
在高版本系統模塊與低版本系統模塊的交互過程中,基于上述結構體實現高低版本通信兼容,其中在每個結構體確定后,在后續的升級版本中通過新增結構體來滿足業務量增加的需求,并且消息體中各結構體的存放的順序確定后,在后續版本中保持不變;
其中,當高版本系統模塊作為發送方,發消息至低版本系統模塊時,高低版本的系統模塊之間按照下述流程實現通信兼容:
1)高版本系統模塊構造接口消息,賦值消息類型,賦值消息體長度為結構體A和結構體B的二進制內容長度和;將結構體A的二進制內容和結構體B的二進制內容按順序放入消息體;發送接口消息給低版本系統模塊;
2)低版本系統模塊接收消息,首先取出消息類型,取出消息體長度,然后判斷消息體長度是否大于等于結構體A的二進制內容長度:若是,則以結構體A的二進制內容的長度取出消息體同長度的內容,并映射為結構體A,若否,則報錯。
2.根據權利要求1所述的軟件系統內模塊高低版本通信兼容實現方法,其特征在于,所述通信接口配置過程中,消息類型用4個字節標識,消息體長度用4個字節標識,消息體內容為基礎結構體或基礎類型的二進制內容。
3.根據權利要求1或2所述的軟件系統內模塊高低版本通信兼容實現方法,其特征在于,當低版本系統模塊作為發送方,發消息至高版本系統模塊時,高低版本的系統模塊之間按照下述流程實現通信兼容:
1)低版本系統模塊構造接口消息,賦值消息類型,賦值消息體長度為結構體A二進制內容長度,然后將結構體A的二進制內容放入消息體;發送接口消息給高版本系統模塊;
2)高版本系統模塊接收消息,首先取出消息類型,取出消息體長度,然后判斷消息體長度是否大于等于結構體A的二進制內容和結構體B的二進制內容長度和:若不是,則以結構體A的二進制內容的長度取出消息體同長度的內容,并映射為結構體A,走低版本系統模塊的業務邏輯;若是,則以結構體A的二進制內容的長度取出消息體同長度的內容并映射為結構體A,再以結構體B的二進制內容的長度從消息體偏移結構體A二級制內容長度的位置取出消息體同長度的內容并映射為結構體B,走高版本系統模塊的業務邏輯。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京甄視智能科技有限公司,未經南京甄視智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010753311.0/1.html,轉載請聲明來源鉆瓜專利網。





