TW201435609A - 多設備間資料異動非同步監控的方法 - Google Patents

多設備間資料異動非同步監控的方法 Download PDF

Info

Publication number
TW201435609A
TW201435609A TW102108404A TW102108404A TW201435609A TW 201435609 A TW201435609 A TW 201435609A TW 102108404 A TW102108404 A TW 102108404A TW 102108404 A TW102108404 A TW 102108404A TW 201435609 A TW201435609 A TW 201435609A
Authority
TW
Taiwan
Prior art keywords
data
change
message queue
client
database
Prior art date
Application number
TW102108404A
Other languages
English (en)
Other versions
TWI515575B (zh
Inventor
Shi-Ming Lin
jun-yi He
zhi-xuan Liu
Jian-Ming Li
Ming-Hui Chen
Original Assignee
Chunghwa Telecom Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chunghwa Telecom Co Ltd filed Critical Chunghwa Telecom Co Ltd
Priority to TW102108404A priority Critical patent/TW201435609A/zh
Publication of TW201435609A publication Critical patent/TW201435609A/zh
Application granted granted Critical
Publication of TWI515575B publication Critical patent/TWI515575B/zh

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

一種多設備間資料異動非同步監控的方法,應用於包含資料讀取執行模組、多執行緒、訊息佇列及計時模組之伺服器中,以非同步機制監控資料異動,提供客戶端終端設備資料異動詢問請求。

Description

多設備間資料異動非同步監控的方法
本發明係之多設備間資料異動非同步監控的方法,更一種用以非同步機制監控資料異動的技術,以在大量客戶端終端設備詢問請求資料是否異動,伺服器透過此非同步監控技術,能減低伺服器往資料庫查詢之工作負荷量,增加系統整體效能與穩定度。
一般而言,多個客戶端(Client)連線至一伺服器(Server)中,對伺服器發出請求,查詢其後端資料庫資料,多屬主從式架構,例如個人電腦中之瀏覽器,以網址連線至web伺服器,建立連線後,客戶端送出請求,伺服器根據客戶端請求之資料,至後端資料庫查詢並回應其結果,然後釋放其連線,客戶端即能在瀏覽器上看到網頁結果。但如果客戶端有N個,如第1圖所示,同時連線至伺服器送出請求時,則伺服器之應用程式10將同時執行對後端資料庫存取N次,並回應客戶端。依此架構下,勢必加重伺服器與後端資料庫之工作負荷,影響程度,輕則拖慢回應速度,重則使系統崩潰無法運作。
有鑒於上述傳統主從式架構之缺點,本發明之目的在於提供 一種非同步監控資料異動的方法,使大量客戶端同時進行請求時,不會增加伺服器及後端資料庫之工作負荷量,限制對資料庫之存取連線數,伺服器不會因為客戶端連線數多而降低效能,後端資料庫亦因存取量限制而能穩定運作。
本發明之多設備間資料異動非同步監控的方法,係由資料讀取執行模組、多執行緒、訊息佇列及計時模組所組成,放置於該架構的應用伺服器中,該架構另包括客戶端終端設備、後端資料庫及外部異動資料源。
本發明之多設備間資料異動非同步監控的方法,多設備即指客戶端終端設備,例如智慧型手機、平板電腦、智慧型電視等設備,當客戶自行於外部異動資料源更新資料,即寫入資料庫中,如何讓客戶其他設備知道資料異動與否,更進一步進行終端設備資料同步,為本發明之重要探討。
其中,應用伺服器以非同步方法監控資料異動並回應客戶端,包括以下步驟:1)外部資料異動源隨時將異動資料寫入一資料庫中;2)客戶端終端設備與應用伺服器建立連線。例如智慧型手機資料推送(Push)功能,手機打開此功能後,隨時會與伺服器連線;3)伺服器之資料讀取執行模組接收終端設備請求之資料,放入訊息佇列中;4)多執行緒分別取出訊息佇列資料,先進先出,後進後出,並至後端資料庫中查詢資料異動與否;5)經資料庫查詢有異動,立即回應客戶端,並釋放其連線;6)若無異動,經計時模組設定的時間,若逾時,則回應客戶端無異動,並釋放該連線;若無逾時,則再次放入訊息佇列中,等待某執行緒取出執行。
週期主動連線無線基地台之行為,則拒絕該行動裝置之註冊登入。其中,更新媒體存取控制位址資訊暨連線時間儲存器中該行動裝置之連線時間,係將媒體存取控制位址資訊暨連線時間儲存器中儲存的時間更新為該行動裝置連線時間。
本發明之多設備間資料異動非同步監控的方法,係將多執行緒之個數固定,假設設定為L個執行緒,最大同時存取後端資料庫即為L個,亦即,不同於習知技術,伺服器存取資料庫次數,係根據客戶端終端設備數量成倍數成長,因此本發明在大量客戶端終端設備同時且多次對伺服器提出查詢資料異動與否之請求時,亦不會增加伺服器及後端資料庫之工作負荷量。
一種多設備間資料異動非同步監控的方法,其非同步監控的方法之步驟如下:a.當一客戶端終端設備於資料更新時間,向一應用伺服器請求資料;b.該應用伺服器之一資料讀取執行模組接收該客戶端終端設備請求之資料,將資料放置於一訊息佇列中;以及c.一多執行緒各別且依序抓取該訊息佇列中之資料,並至一資料庫查詢是否異動,若有異動則立即回應該客戶端設備,並釋放其連線;若無異動,則再依一計時模組所設定之時間,超過時間,立即回應該客戶端設備,未超過時間,則將資料放該回訊息佇列中,等待下一執行緒再取出執行。
其中,該資料係為一系列之同步資料命令訊息,更包含查詢資料異同之命令、新增事件之命令、刪除事件之命令、修改事件之命令, 其事件包括客戶端郵件、聯絡人以及行事曆。
其中,該方法設於一個人資訊管理系統。
其中,該應用伺服器更包括:該資料讀取執行模組執行該步驟b之接收客戶端設備之資料並放置於該訊息佇列的工作;以及該多執行緒執行該步驟c之抓取該訊息佇列中之資料,並連至該資料庫查詢,有異動則回應該客戶端設備,並釋放該連線;無異動,再根據該計時模組設定之時間,超過時間亦立即回應該客戶端設備,釋放該連線,未超過時間則再放回該訊息佇列中,等待下一次執行緒取出執行。
本發明所提供之多設備間資料異動非同步監控的方法,與其他習用技術相互比較時,更具備下列優點:
1.本發明因多執行緒設定為固定個數,亦即限制住最大同時存取後端資料庫數目,故能保證應用伺服器之高效能,與資料庫之穩定度。
2.本發明資料讀取執行模組先將客戶端請求資料放置於訊息、佇列中,而訊息佇列之數量設定係根據隨機記憶體(RAM)大小,現今隨機記憶體成本低廉,一般安裝容量小為8GB,大至2TB,故應用伺服器能接收比傳統主從式架構更大量之客戶端請求;想反地,傳統主從式架構如要接收大量客戶端請求,因一連線產生一執行程序(process)處理,中央處理器產生的執行程序有限,勢必需增加伺服器數目,而本發明只需增加隨機記憶體容量,降低了營運成本。
上列詳細說明係針對本發明之一可行實施例之具體說明,惟該實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為 之等效實施或變更,均應包含於本案之專利範圍中。
綜上所述,本案不但在空間型態上確屬創新,並能較習用物品增進上述多項功效,應已充分符合新穎性及進步性之法定發明專利要件,爰依法提出申請,懇請 貴局核准本件發明專利申請案,以勵發明,至感德便。
1‧‧‧應用伺服器
2‧‧‧客戶端終端設備
3‧‧‧資料庫
4‧‧‧外部資料異動源
10‧‧‧應用程式
11‧‧‧資料讀取執行模組
12‧‧‧訊息佇列
13‧‧‧多執行緒
14‧‧‧計時模組
S31~S37‧‧‧步驟流程
S1~S6‧‧‧步驟流程
第1圖為習知主從式架構之資料異動同步監控方法的網路架構圖。
第2圖為本發明之多設備間資料異動非同步監控的方法之系統架構圖。
第3圖為本發明實施例所繪示之終端設備、應用伺服器與資料庫收發訊息步驟示意圖。
第4圖為本發明多設備間資料異動非同步監控的方法之實施例運作流程圖。
為利 貴審查委員了解本發明之技術特徵、內容與優點及其所能達到之功效,茲將本發明配合附圖,並以實施例之表達形式詳細說明如下,而其中所使用之圖式,其主旨僅為示意及輔助說明書之用,未必為本發明實施後之真實比例與精準配置,故不應就所附之圖式的比例與配置關係解讀、侷限本發明於實際實施上的權利範圍,合先敘明。
請參閱第2圖,用以顯示本發明之多設備間資料異動非同步 監控的方法的系統架構圖。如圖所示,該架構包括至少一應用伺服器1、多個用戶端終端設備2、後端資料庫3以及外部資料異動源4。該外部資料異動源4透過網路系統與後端資料庫3連結存取,其中,本實施例之非同步監控資料異動應用在個人資訊管理系統時,該外部資料異動源4也許為電腦之瀏覽器,透過瀏覽器更改其聯絡人、行事曆資料,使得後端資料庫之個人資料產生異動,故稱外部資料異動源4。
續上之應用例,該客戶端設備可能不只一種,可能還包含智慧型手機、平板電腦等,此類之設備即如第2圖之終端設備2,當外部資料動源4改變資料庫3之資料,應用伺服器1如何即時且穩定地讓大量終端設備2知道資料異動,乃至更進一步進行資料同步,為本發明之探討重點。
該應用伺服器1係包括資料讀取執行模組11、訊息佇列12、多執行緒13以及計時模組14。客戶端終端設備2根據自行設定之時間,透過有線或無線網路系統與應用伺服器1建立連線,並發出請求,詢問資料異動與否,應用伺服器1之資料讀取執行模組11先將請求資料放入訊息佇列12之中,假設多執行緒設定為L個,依訊息佇列先進先取出、後進後取出之原則,依序取出請求資料至後端資料庫3詢問資料異動與否,假設資料有異動,立即回覆客戶端終端設備2,並釋放該連線;相反地,資料並無異動,再根據計時模組設定之逾時時間決定,逾時則回覆客戶端終端設備2,並釋放該連線,無逾時則放回訊息佇列12中,等待某一支執行緒13取出,再次執行詢問資料庫3,依此類推。
請參閱第3圖,其用以顯示第2圖之終端設備與應用伺服器,以及資料庫之間的運作關係。
首先,於步驟S31中,終端設備2與應用伺服器1建立連線。
於步驟S32中,資料讀取執行模組11將請求資料放入訊息佇列12中。
於步驟S33中,多執行緒13檢查訊息佇列12是否有值?
於步驟S34中,假設訊息佇列有值,多執行緒13依序取出執行。
於步驟S35中,多執行緒13根據取出訊息佇列12之資料,連線至後端資料庫3,詢問資料是否異動?
於步驟S361中,資料庫3回應資料有異動,立即回應該終端設備,並釋放該連線。
於步驟S362中,資料庫3回應資料無異動,且超過計時模組14所設定時間,立即回應該終端設備,並釋放該連線。
於步驟S37中,資料庫3回應資料無異動,且還沒超過計時模組14所設定時間,放回訊息佇列中。
請參閱第4圖,其用以顯示第2圖之一實施例運作流程圖,亦以顯示第3圖之步驟S33至步驟S37間循環之流程。
於步驟S1中,判斷訊息佇列是否有資料,若有資料,則繼續進行步驟S2,否則回到步驟S1。
於步驟S2中,每一執行緒分別且依序地取出訊息佇列之資料。
於步驟S3中,至資料庫查詢資料是否異動?資料有異動,則繼續進行步驟S6,否則進行步驟S4。
於步驟S4中,超過計時模組設定之時間,則繼續進行步驟S6,否則進行步驟S5。
於步驟S5中,回到步驟S1。
於步驟S6中,回應客戶端終端設備,並釋放該連線。
1‧‧‧應用伺服器
2‧‧‧客戶端終端設備
3‧‧‧資料庫
4‧‧‧外部資料異動源
11‧‧‧資料讀取執行模組
12‧‧‧訊息佇列
13‧‧‧多執行緒
14‧‧‧計時模組

Claims (4)

  1. 一種多設備間資料異動非同步監控的方法,其非同步監控的方法之步驟如下:a.當一客戶端終端設備於資料更新時間,向一應用伺服器請求資料;b.該應用伺服器之一資料讀取執行模組接收該客戶端終端設備請求之資料,將資料放置於一訊息佇列中;以及c.一多執行緒各別且依序抓取該訊息佇列中之資料,並至一資料庫查詢是否異動,若有異動則立即回應該客戶端設備,並釋放其連線;若無異動,則再依一計時模組所設定之時間,超過時間,立即回應該客戶端設備,未超過時間,則將資料放該回訊息佇列中,等待下一執行緒再取出執行。
  2. 如申請專利範圍第1項之多設備間資料異動非同步監控方法,其中,該資料係為一系列之同步資料命令訊息,更包含查詢資料異同之命令、新增事件之命令、刪除事件之命令、修改事件之命令,其事件包括客戶端郵件、聯絡人以及行事曆。
  3. 如申請專利範圍第1項之多設備間資料異動非同步監控方法,其中,該方法設於一個人資訊管理系統。
  4. 如申請專利範圍第1項之多設備間資料異動非同步監控方法,其中,該應用伺服器更包括:該資料讀取執行模組執行該步驟b之接收客戶端設備之資料並放置於該訊息佇列的工作;以及 該多執行緒執行該步驟c之抓取該訊息佇列中之資料,並連至該資料庫查詢,有異動則回應該客戶端設備,並釋放該連線;無異動,再根據該計時模組設定之時間,超過時間亦立即回應該客戶端設備,釋放該連線,未超過時間則再放回該訊息佇列中,等待下一次執行緒取出執行。
TW102108404A 2013-03-11 2013-03-11 多設備間資料異動非同步監控的方法 TW201435609A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW102108404A TW201435609A (zh) 2013-03-11 2013-03-11 多設備間資料異動非同步監控的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW102108404A TW201435609A (zh) 2013-03-11 2013-03-11 多設備間資料異動非同步監控的方法

Publications (2)

Publication Number Publication Date
TW201435609A true TW201435609A (zh) 2014-09-16
TWI515575B TWI515575B (zh) 2016-01-01

Family

ID=51943360

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102108404A TW201435609A (zh) 2013-03-11 2013-03-11 多設備間資料異動非同步監控的方法

Country Status (1)

Country Link
TW (1) TW201435609A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI754561B (zh) * 2021-03-12 2022-02-01 中華電信股份有限公司 即時通訊系統、方法及電腦可讀媒介

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107292741B (zh) * 2017-07-24 2023-09-01 ***股份有限公司 一种资源分配方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI754561B (zh) * 2021-03-12 2022-02-01 中華電信股份有限公司 即時通訊系統、方法及電腦可讀媒介

Also Published As

Publication number Publication date
TWI515575B (zh) 2016-01-01

Similar Documents

Publication Publication Date Title
CN109492040B (zh) 一种适用于数据中心海量短报文数据处理的***
CN103390041B (zh) 一种基于中间件提供数据服务的方法和***
WO2015192661A1 (zh) 一种分布式存储***中的数据同步方法、装置及***
US20100106914A1 (en) Consistency models in a distributed store
CN107181787A (zh) 一种请求处理方法及装置
US11650985B2 (en) Caching techniques for a database change stream
CN109743137B (zh) 一种支持更新的分布式延迟消息队列处理***
CN103209223A (zh) 分布式应用会话信息共享方法、***和应用服务器
CN105045607A (zh) 一种实现多种大数据计算框架统一接口的方法
CN102449602A (zh) 用于降低软件应用的启动成本的***和方法
US11216346B2 (en) Coordinated replication of heterogeneous database stores
JP5686034B2 (ja) クラスタシステム、同期制御方法、サーバ装置および同期制御プログラム
CN110222119B (zh) 一种异构数据库的数据转换同步方法、设备及存储介质
EP3722973A1 (en) Data processing method and device for distributed database, storage medium, and electronic device
EP4213038A1 (en) Data processing method and apparatus based on distributed storage, device, and medium
CN109614270A (zh) 基于Hbase的数据读写方法、装置、设备及存储介质
CN112732756B (zh) 数据查询方法、装置、设备及存储介质
CN107800767A (zh) 一种访问响应管理方法、服务器及计算机可读存储介质
WO2020224098A1 (zh) 基于全局负载均衡的云存取方法、装置及存储介质
WO2022218248A1 (zh) 用户画像数据处理方法和装置、电子设备和可读存储介质
CN110489696A (zh) 缓存更新方法、装置及电子设备、存储介质
TW201435609A (zh) 多設備間資料異動非同步監控的方法
CN107025257A (zh) 一种事务处理方法及装置
CN110866011A (zh) 数据表同步方法、装置、计算机设备和存储介质
CN108874472A (zh) 一种用户头像的优化显示方法及***

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees