[發明專利]實時系統更新方法及裝置有效
| 申請號: | 201410814503.2 | 申請日: | 2014-12-23 |
| 公開(公告)號: | CN104536784B | 公開(公告)日: | 2018-02-23 |
| 發明(設計)人: | 馬燕龍 | 申請(專利權)人: | 北京國雙科技有限公司 |
| 主分類號: | G06F8/65 | 分類號: | G06F8/65;G06F8/71 |
| 代理公司: | 北京康信知識產權代理有限責任公司11240 | 代理人: | 李志剛,吳貴明 |
| 地址: | 100086 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 實時 系統 更新 方法 裝置 | ||
技術領域
本發明涉及數據處理領域,具體而言,涉及一種實時系統更新方法及裝置。
背景技術
實時系統用于數據的實時處理,滿足用戶實時查看數據的需求。如圖1所示的實時系統的架構的邏輯示意圖中包含了多個不同功能的節點,其中,請求轉發節點用于將請求轉發到計算節點,計算節點用于將請求進行解析,并將解析得到的數據進行聚合,中心節點用于保存聚合后的數據,查詢節點用于從中心節點查詢保存后的數據,其中,每個節點包含多個實例,例如,實例1、實例2和實例3,實例可以是節點的進程。上述實施系統中的每個實例發送數據的目標地址都是在配置文件中配置的,比如請求轉發節點實例需要配置所有計算節點實例的地址列表,計算節點實例需要配置所有中心節點實例的地址列表,在每個節點啟動的時候讀取配置文件中配置的目標地址列表,數據被發送到每個目標地址對應的實例中。一旦實例啟動之后,再修改配置文件將不起作用,例如,在配置文件中新添加一個目標地址,此時數據并不會發送給這個新加的目標地址。此外,上述實施系統的每個節點都有對應的守護進程,該守護進程一方面用于在配置文件中配置需要啟動的實例,在守護進程啟動后根據配置文件中的配置啟動實例;另一方面該守護進程用于監控正在運行的實例,當實例停止運行時重新啟動實例。
上述實時系統主要存在如下兩個問題,一是在每次進行系統升級時,必須停掉整個實時系統,升級完畢后,再重新啟動實時系統。例如,對計算節點進行升級,此時如果僅停掉實時系統中的計算節點進行升級,將會導致向計算節點發送數據失敗,從而使得向計算節點發送的數據丟失。因此,在實時系統升級期間,必須停掉整個實時系統,在升級期間的數據將全部丟失,做不到無縫更新。二是線上環境運行時,如果發現某個節點性能瓶頸,需要在配置文件中添加新實例,此時同樣需要停掉整個系統后再重新啟動實時系統,這樣新實例才會起作用,這個過程同樣存在數據丟失的問題。
針對相關技術中實時系統更新時存在數據丟失的問題,目前尚未提出有效的解決方案。
發明內容
本發明的主要目的在于提供一種實時系統更新方法及裝置,以解決相關技術中實時系統更新時存在數據丟失的問題。
為了實現上述目的,根據本發明的一個方面,提供了一種實時系統更新方法。
實時系統包括第一節點和第二節點,第一節點用于向第二節點發送數據,第一節點和第二節點均包含多個實例,根據本發明的實時系統更新方法包括:檢測第一節點的配置文件是否發生更新,其中,第一節點的配置文件中配置有第一節點的實例發送數據的目標地址,目標地址為第二節點的實例的地址;在檢測到配置文件發生更新時,加載更新后的配置文件;以及第一節點根據更新后的配置文件向第二節點的實例發送數據。
進一步地,檢測第一節點的配置文件是否發生更新包括:檢測第一節點的配置文件是否發生修改;如果檢測出第一節點的配置文件發生修改,則確定第一節點的配置文件發生更新;以及如果檢測出第一節點的配置文件未發生修改,則確定第一節點的配置文件未發生更新。
進一步地,實時系統還包括第三節點,第三節點用于存儲實時系統中的實例相關的數據,該方法還包括:通過第一節點的第一實例調用第三節點的第一預設操作,其中,第一實例是指第一節點的多個實例中處于運行狀態的實例,第一預設操作用于存儲數據至第三節點中;以及通過執行第一預設操作將第一實例相關的數據存儲至第三節點中。
進一步地,通過執行第一預設操作存儲第一實例相關的數據至第三節點中包括:判斷第一實例的編號是否存在于預設字典中,其中,預設字典用于存儲實時系統的實例相關的數據,預設字典包含標識列和屬性值列,標識列用于存儲實例的編號,屬性值列用于存儲實例相關的數據;如果判斷出第一實例的編號存在于預設字典中,將第一實例相關的數據存儲于預設字典中第一實例的編號對應的屬性值列中;以及如果判斷出第一實例的編號不存在于預設字典中,在預設字典中添加第一實例的編號,并將第一實例相關的數據存儲于預設字典中第一實例的編號對應的屬性值列中。
進一步地,在通過第一節點的第一實例調用第三節點的第一預設操作之后,該方法還包括:判斷第一實例是否是第一次調用第一預設操作;如果判斷出第一實例不是第一次調用第一預設操作;查找第一實例對應的存儲文件;將第一實例相關的數據存儲至對應的存儲文件中;以及如果判斷出第一實例是第一次調用第一預設操作,為第一實例創建對應的存儲文件,并將第一實例相關的數據存儲至對應的存儲文件中。
為了實現上述目的,根據本發明的另一方面,提供了一種實時系統更新裝置。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京國雙科技有限公司,未經北京國雙科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410814503.2/2.html,轉載請聲明來源鉆瓜專利網。





