[發明專利]一種緩存數據處理方法和系統有效
| 申請號: | 201210395520.8 | 申請日: | 2012-10-17 |
| 公開(公告)號: | CN103780636B | 公開(公告)日: | 2018-02-27 |
| 發明(設計)人: | 韓旻 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司11319 | 代理人: | 蘇培華 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 緩存 數據處理 方法 系統 | ||
技術領域
本申請涉及計算機技術領域,特別是涉及一種緩存數據處理方法和系統。
背景技術
現在的大型互聯網應用系統一般采用分布式架構,將負責不同功能的業務功能單元分解到不同的應用系統中去,這些各自負責不同功能的應用系統最終又聚合成為一個能夠提供業務價值的整體應用系統。其網絡環境相對復雜。為了應對互聯網應用的巨大請求量,分布式架構系統除了按照功能進行分解之外,提供各種業務功能的應用系統還需要使用多臺服務器來支撐這些請求量。
而在分布式架構中,在負責不同業務功能的應用系統之間,通常會存在一些各個應用系統都需要理解、使用的公用數據,這些公用數據使用極其頻繁,不適合在兩個或多個系統之間互相傳遞,通常需要在計算機內存中將這些數據保存起來,在實際使用數據時直接訪問使用這些在內存中的數據。這種在計算機內存中保存數據的方式稱為數據緩存。
在分布式環境下,各個應用系統之間、各臺服務器之間的內存數據都是互相獨立的,在需要被數據緩存的數據發生變化時,應該要保證所有系統、所有服務器內存中的緩存數據同時被更新,如果沒有同時更新有可能出現數據不一致進而引發業務錯誤。
因此,由于在分布式環境下多個不同服務器會需要使用相同的重要基礎數據,這些重要基礎數據由于被使用頻率極高,需要以緩存形式存放在本地內存中。而如何在多個不同服務器之間保持這些重要數據的全局一致性一直是非常難以解決的一個技術問題。
下面舉個例子說明分布式系統中各個應用系統之間公用數據同步的重 要性和必要性:
參照圖1,在一個互聯網購物系統中,有一個交易系統和一個發貨系統,分別提供交易功能和發貨功能。兩個系統各有3組服務器來應對用戶的請求。
公用數據包括“商品類目”,由數據提供服務器提供。交易系統需要使用商品類目數據給用戶展示商品,發貨系統需要使用商品類目數據給工作人員進行貨物的分類發放。兩個系統對商品類型數據的使用都非常頻繁,需要緩存在服務器內存中保證效率。公用數據“商品類目”由數據提供服務器提供,而交易系統和發貨系統的服務器均是數據使用服務器。
數據提供服務器的商品類目數據會隨著業務的發展發生變化,如果兩個系統之間的商品類目數據發生不一致會出現用戶購買的貨物無法發貨的業務錯誤。
現有技術中,數據提供服務器提供數據查詢接口,數據使用服務器通過查詢接口得到數據然后緩存在自己的數據緩存中,由于數據可能會發生變化,數據使用服務器會通過應用程序隔一段時間就向數據提供發發起查詢請求,將數據提供服務器的數據獲取到數據使用服務器,在數據使用服務器判斷是否需要更新,如果需要,則將獲取到的數據更新到本地緩存,以保證自己的數據緩存是最新的。
上述過程中,由于是由數據使用服務器定時的主動去將數據提供服務器的數據全部獲取到本地,再進行判斷更新,這種定時拉取的方式存在以下幾種缺點:
1、無論數據是否變化都需要隔一段時間就向數據提供服務器拉取數據,將數據提供服務器的提供的公用數據抓取到本地進行處理,而在數據提供服務器的公用數據沒有變化的情況下,這種拉取動作嚴重浪費硬件資源和網絡資源。
2、由于數據提供服務器是被動的,無法知道有多少數據使用服務器在使用它提供的數據,對于整個系統來說,非常不方便對數據使用服務器進行監控和管理,維護成本高。
發明內容
本申請所要解決的技術問題之一是提供一種緩存數據處理方法和系統,解決數據使用方在不知數據提供方數據更新狀態的情況下主動拉取導致浪費硬件資源和網絡資源,維護成本高等問題。
為了解決上述問題,本申請公開了一種緩存數據處理方法,包括:
針對每一第一服務器,第二服務器記錄第一服務器標識;
每當公用數據出現變更,第二服務器根據記錄的各第一服務器標識通知第一服務器對緩存中的公用數據進行更新;
第二服務器監控第一服務器是否更新成功。
優選的,所述第二服務器監控第一服務器是否更新成功包括:
接收第一服務器返回的更新結果消息;
根據所述更新結果消息,判斷相應第一服務器是否更新成功。
優選的,每當公用數據出現變更之后還包括:
第二服務器對變更后的公用數據生成版本信息。
優選的,所述根據所述更新結果消息,判斷相應第一服務器是否更新成功后,還包括:
根據所述更新結果消息,記錄第一服務器當前成功緩存的公用數據的版本信息。
優選的,還包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210395520.8/2.html,轉載請聲明來源鉆瓜專利網。





