[發明專利]一種動態切換數據流的方法、系統、介質及終端有效
| 申請號: | 202110924619.1 | 申請日: | 2021-08-12 |
| 公開(公告)號: | CN113608896B | 公開(公告)日: | 2023-09-08 |
| 發明(設計)人: | 魏程琛;賀寧 | 申請(專利權)人: | 重慶紫光華山智安科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54;G06F9/455 |
| 代理公司: | 上海光華專利事務所(普通合伙) 31219 | 代理人: | 李鐵 |
| 地址: | 400700 重慶市*** | 國省代碼: | 重慶;50 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 動態 切換 數據流 方法 系統 介質 終端 | ||
本發明提供一種動態切換數據流的方法、系統、介質及終端,方法包括:監控數據服務狀態,所述數據服務包括數據消費服務和數據生產服務;當所述數據消費服務啟動時,若數據完全被消費,則進行實時處理,否則進行異步處理;當所述數據生產服務啟動時,通過調用數據消費服務數據接入接口確認,使所述數據消費服務正常運行,并根據中間件中狀態寫入主題的偏移量的變化,改變數據生產方式;本發明針對數據生產方和數據消費,采用同步異步結合的方式,在不額外增加物理資源消耗的情況下,不僅能保證數據不丟失,保證了健壯性,還能最大限度的保留數據的即時性。
技術領域
本發明涉及計算機應用領域,尤其涉及一種動態切換數據流的方法、系統、介質及終端。
背景技術
隨著容器概念的普及,docker和kubernetes的應用越來越多,容器化的使用,快速編排增加容器服務來給服務縱向擴容帶來了很多便利,解決了很多性能瓶頸。
但是,目前常用方案是同步操作大數據量時,只能增加資源或者啟動更多的容器來解決,異步操作由不能最大限度的保證即時性,同步操作數據消費的服務異常時,還會造成數據的大量丟失。要想處理更多的數據,只能請求更多的物理資源。所以在某些數據量大,且不是特別要求數據即時性的一些場景,現有的方案無法同時滿足資源占用和及時性的業務要求。
發明內容
鑒于以上所述現有技術的缺點,本發明提供一種動態切換數據流的方法、系統、介質及終端,以解決上述技術問題。
本發明提供的動態切換數據流的方法,包括:
監控數據服務狀態,所述數據服務包括數據消費服務和數據生產服務;
當所述數據消費服務啟動時,若數據完全被消費,則進行實時處理,否則進行異步處理;
當所述數據生產服務啟動時,通過調用數據消費服務數據接入接口確認,使所述數據消費服務正常運行,并根據中間件中狀態寫入主題的偏移量的變化,改變數據生產方式。
于本發明的一實施例中,當數據服務異常重啟時,同時重啟所述數據消費服務和數據生產服務,若重啟后所述數據消費服務異常,則將數據發送至中間件;
所述監控數據服務狀態包括:獲取容器的資源情況、接口的隊列閾值、中間件中數據寫入主題的偏移量,以及中間件中狀態寫入主題的偏移量;如所述中間件中數據寫入主題的偏移量為最新,則判定數據完全被消費。
于本發明的一實施例中,如存在未消費完成的數據,則通過將主題中用于標志是否實時處理的標志參數賦值為假,并將已賦假值的標志參數按預設狀態寫入主題寫入中間件,并進行數據的異步處理;
如不存在未消費完成的數據,
若資源占用率大于預設的閾值,則將所述標志參數賦值為假;
若資源占用率小于等于所述閾值,則將所述標志參數賦值為真;
在更新所述標志參數時,通過將標志參數已賦值的狀態寫入主題,寫入中間件,通知數據生產服務。
于本發明的一實施例中,所述通過調用數據消費服務數據接入接口確認,使所述數據消費服務正常運行之后包括:
若所述中間件中狀態寫入主題的偏移量為最新,
則調用再平衡接口,消費最后一條數據作為數據處理依據;
否則,則調用數據消費服務接入查詢接口確認后,再以實際消費的最新數據進行處理。
于本發明的一實施例中,在判斷所述中間件中狀態寫入主題的偏移量為最新之前,包括:
如果調用接入接口不滿足正常處理請求,則直接進行數據的異步生產,將數據寫入中間件的數據寫入主題中;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于重慶紫光華山智安科技有限公司,未經重慶紫光華山智安科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110924619.1/2.html,轉載請聲明來源鉆瓜專利網。





