TW201944236A - 任務處理方法、裝置及系統 - Google Patents

任務處理方法、裝置及系統

Info

Publication number
TW201944236A
TW201944236A TW108107430A TW108107430A TW201944236A TW 201944236 A TW201944236 A TW 201944236A TW 108107430 A TW108107430 A TW 108107430A TW 108107430 A TW108107430 A TW 108107430A TW 201944236 A TW201944236 A TW 201944236A
Authority
TW
Taiwan
Prior art keywords
task
target
confirmation signal
state
target device
Prior art date
Application number
TW108107430A
Other languages
English (en)
Inventor
繆家國
Original Assignee
香港商阿里巴巴集團服務有限公司
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 香港商阿里巴巴集團服務有限公司 filed Critical 香港商阿里巴巴集團服務有限公司
Publication of TW201944236A publication Critical patent/TW201944236A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/481Exception handling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本發明公開了一種任務處理方法、裝置及系統。其中,該方法包括:獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。本發明解決了如何將雲端計算邏輯及應用部署到靠近資料來源一側的邊緣設備上運行的技術問題。

Description

任務處理方法、裝置及系統
本發明係關於電腦技術領域,具體而言,關於一種任務處理方法、裝置及系統。
隨著物聯網技術的發展,物聯網設備存取雲端的存取量日益增高、場景越發複雜。現有技術中,都是將設備的全部資料上報到雲端,在雲端進行計算,佔用了大量的雲端計算資源,網路頻寬成本高。然而,大部分任務的邏輯處理並非需要雲端集群分散式運算的能力,大部分雲端資料也並非具有直接的計算價值。
相對於雲端計算而言,邊緣計算就顯得尤為重要,邊緣計算不僅可以減少設備請求的回應時間,同時,還可以降低設備和雲端通信的網路成本,以及雲端的服務壓力。那麼,如何將雲端計算邏輯及應用部署到靠近資料來源一側的邊緣設備上運行,目前尚未提出有效的解決方案。
本發明實施例提供了一種任務處理方法、裝置及系統,以至少解決如何將雲端計算邏輯及應用部署到靠近資料來源一側的邊緣設備上運行的技術問題。
根據本發明實施例的一個態樣,提供了一種任務處理方法,包括:獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
根據本發明實施例的另一態樣,還提供了一種任務處理方法,包括:將心跳請求發送至調度設備;接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的;根據上述任務內容執行上述目標任務。
根據本發明實施例的另一態樣,還提供了一種任務處理方法,包括:啟動掃描執行緒;在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量;若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
根據本發明實施例的另一態樣,還提供了一種任務處理裝置,包括:獲取模組,用於獲取目標任務,上述目標任務為需部署至目標設備的任務;產生模組,用於根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;通訊模組,用於在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
根據本發明實施例的另一態樣,還提供了一種任務處理裝置,包括:發送模組,用於將心跳請求發送至調度設備;接收模組,用於接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的;執行模組,用於根據上述任務內容執行上述目標任務。
根據本發明實施例的另一態樣,還提供了一種任務處理裝置,包括:啟動模組,用於啟動掃描執行緒;掃描模組,用於在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量;調用模組,用於若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
根據本發明實施例的另一態樣,還提供了一種任務處理系統,包括上述的任務處理裝置。
根據本發明實施例的另一態樣,還提供了一種儲存媒體,上述儲存媒體包括儲存的程式,其中,在上述程式運行時控制上述儲存媒體所在設備執行以下功能:獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
根據本發明實施例的另一態樣,還提供了一種處理器,上述處理器用於運行程式,其中,上述程式運行時執行以下功能:獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
在本發明實施例中,透過獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務,達到了提高邊緣計算的任務處理速率和邊緣運行系統穩定性的目的,從而實現了透過提高邊緣計算的任務處理速率,減少設備請求的回應時間的技術效果,進而解決了如何將雲端計算邏輯及應用部署到靠近資料來源一側的邊緣設備上運行的技術問題。
為了使本技術領域的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。
需要說明的是,本發明的說明書和申請專利範圍及上述附圖中的術語“第一”、“第二”等是用於區別類似的對象,而不必用於描述特定的順序或先後次序。應該理解這樣使用的資料在適當情況下可以互換,以便這裡描述的本發明的實施例能夠以除了在這裡圖示或描述的那些以外的順序實施。此外,術語“包括”和“具有”以及他們的任何變形,意圖在於覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限於清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對於這些過程、方法、產品或設備固有的其它步驟或單元。
首先,在對本申請實施例進行描述的過程中出現的部分名詞或術語適用於如下解釋:
邊緣計算:是指一種將雲端邏輯調度部署於邊緣端運行的技術;在靠近物或資料來源的一側,採用網路、計算、儲存、應用核心能力為一體的開放平台,就近提供最近端服務。其應用程式在邊緣側發起,產生更快的網路服務回應,滿足行業在即時業務、應用智慧型、安全與隱私保護等方面的基本需求。
邊緣端執行節點:是指一種可以為各種執行引擎提供運行環境的節點,可以部署於邊緣閘道設備、開源的應用容器(例如,Docker容器)上,其中,引擎驅動支援任意符合標準規範的執行引擎以外掛程式化的方式集成到運行環境中,且多語言描述的執行引擎可透過資料匯流排行程間通信的方式被管理。
終態:指部署的目標任務處於終止狀態。
瞬態:指部署的目標任務處於中間狀態,其中,中間狀態指目標任務的期望狀態與目標任務的實際狀態不相同的狀態。
掃描器(Scanner):是一類自動檢測本地或遠端主機安全弱點的程式,可以快速的準確的發現掃描目標存在的漏洞並提供給使用者掃描結果,工作原理是掃描器向目標電腦發送資料包,然後根據對方回饋的資訊來判斷對方的作業系統類型、開發埠、提供的服務等敏感資訊。

實施例 1
根據本發明實施例,還提供了一種任務處理方法的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組電腦可執行指令的電腦系統中執行,並且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟。
本申請實施例1所提供的方法實施例可以在移動終端、電腦終端或者類似的運算裝置中執行。圖1示出了一種用於實現任務處理方法的電腦終端(或移動設備)的硬體結構方塊圖。如圖1所示,電腦終端10(或移動設備10)可以包括一個或多個(圖中採用102a、102b,……,102n來示出)處理器102(處理器102可以包括但不限於微處理器MCU或可編程邏輯裝置FPGA等的處理裝置)、用於儲存資料的記憶體104、以及用於通信功能的傳輸模組106。除此以外,還可以包括:顯示器、輸入/輸出介面(I/O介面)、通用序列匯流排(USB)埠(可以作為I/O介面的埠中的一個埠被包括)、網路介面、電源和/或相機。本領域普通技術人員可以理解,圖1所示的結構僅為示意,其並不對上述電子裝置的結構造成限定。例如,電腦終端10還可包括比圖1中所示更多或者更少的元件,或者具有與圖1所示不同的配置。
應當注意到的是上述一個或多個處理器102和/或其他資料處理電路在本文中通常可以被稱為“資料處理電路”。該資料處理電路可以全部或部分的體現為軟體、硬體、韌體或其他任意組合。此外,資料處理電路可為單個獨立的處理模組,或全部或部分的結合到電腦終端10(或移動設備)中的其他元件中的任意一個內。如本申請實施例中所涉及到的,該資料處理電路作為一種處理器控制(例如與介面連接的可變電阻終端路徑的選擇)。
記憶體104可用於儲存應用軟體的軟體程式以及模組,如本發明實施例中的任務處理方法對應的程式指令/資料儲存裝置,處理器102透過運行儲存在記憶體104內的軟體程式以及模組,從而執行各種功能應用以及資料處理,即實現上述的應用程式的任務處理方法。記憶體104可包括高速隨機記憶體,還可包括非易失性記憶體,如一個或者多個磁性儲存裝置、快閃記憶體、或者其他非易失性固態記憶體。在一些實例中,記憶體104可進一步包括相對於處理器102遠端設置的記憶體,這些遠端存放器可以透過網路連接至電腦終端10。上述網路的實例包括但不限於互聯網、企業內部網、局域網、移動通信網及其組合。
傳輸裝置106用於經由一個網路接收或者發送資料。上述的網路具體實例可包括電腦終端10的通信供應商提供的無線網路。在一個實例中,傳輸裝置106包括一個網路介面卡(Network Interface Controller,NIC),其可透過基地台與其他網路設備相連從而可與互聯網進行通訊。在一個實例中,傳輸裝置106可以為射頻(Radio Frequency,RF)模組,其用於透過無線方式與互聯網進行通訊。
顯示器可以例如觸控式螢幕式的液晶顯示器(LCD),該液晶顯示器可使得用戶能夠與電腦終端10(或移動設備)的用戶介面進行交互。
需要說明的是,圖1示出的硬體結構方塊圖,不僅可以作為上述電腦終端10(或移動設備)的示例性方塊圖,還可以作為上述伺服器的示例性方塊圖,電腦終端10(或移動設備)可以經由資料網路連接或電子連接到一個或多個伺服器,例如,雲端伺服器、安全伺服器、資源伺服器、遊戲伺服器等。一種可選實施例中,上述電腦終端10(或移動設備)可以是任意行動計算裝置等。資料網路連接可以是局域網連接、廣域網連接、網際網路連接,或其他類型的資料網路連接。電腦終端10(或移動設備)可以執行以連接到由一個伺服器(例如安全伺服器)或一組伺服器執行的網路服務。網路服務器是基於網路的用戶服務,諸如社交網路、雲資源、電子郵件、線上支付或其他線上應用。
在本申請所提供的實施例中,透過將資料過濾、格式轉換、基本運算、腳本、規則等邏輯單元部署於邊緣端閘道,不僅可以減少設備請求的回應時間,同時,還可以降低設備和雲端之間進行通信的網路成本,以及相應減少了雲端的服務壓力。
需要說明的是,雲端的分散式資源調度設備主要用於統一雲端運算資源,為用戶提供應用邏輯託管運行能力,其主要功能在於租戶資源隔離和資源配置。
但是,由於邊緣端運行節點一般由各邊緣計算應用者自行提供,租戶隔離的問題並不突出。相應的,由於涉及到雲端一體化開發的問題,邊緣端運行環境相比於雲端運行環境惡劣的多,因此,如何保障邊緣端運行環境穩定性、資料一致性為當前面臨的核心問題。
因此,在雲端的運行任務部署至邊緣端的運行環境的情況下,需要在邊緣端配置自檢測機制,以監測邊緣端的運行環境是否出現異常情況,並根據具體異常情況進行相應的異常處理;此外,由於上層開發者需要清晰知曉部署任務的生命週期,因此,還需要在邊緣端配置一套行之有效的任務狀態管理機制,以便於監測部署任務的生命週期和任務狀態。
在上述運行環境下,本申請提供了一種如圖2所示的任務處理方法。需要說明的是,本申請所提供的任務處理方法可以但不限於在邊緣計算場景下運行或執行,本申請透過對邊緣端運行環境、部署任務狀態、操作信號狀態等進行監測和管理,對邊緣閘道設備的異常進行自檢測和補償,實現了提高邊緣端運行環境穩定性、資料一致性的技術效果。
需要說明的是,本申請所提供的任意一種任務處理方法實施例,均可以應用於智慧型工業、智慧城市、無人超市、智慧型飯店等新興物聯網領域,以提高邊緣計算的任務處理速率,減少設備請求的回應時間。
圖2是根據本發明實施例1的一種任務處理方法的流程圖,如圖2所示,本申請實施例所提供的任務處理方法可以透過如下方法步驟實現:
步驟S202,獲取目標任務,上述目標任務為需部署至目標設備的任務。
需要說明的是,本申請實施例的執行主體可以為調度設備,例如,雲端的調度設備;該調度設備透過獲取需要在邊緣部署的目標任務,並根據上述目標任務,產生對應的確認信號,在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,進而由上述目標設備根據上述任務內容執行上述目標任務。
具體的,上述目標任務為可以在目標設備上部署執行的任務,可以但不限於為資料過濾、格式轉換、基本運算、腳本、規則、配置、應用等任務;上述目標設備可以為邊緣閘道設備、基地台、雲伺服器,例如,可以為邊緣雲伺服器;其中,該目標設備上可以部署有用於為各種執行引擎提供運行環境的邊緣端執行節點。
作為一種可選的實施例,本申請中可以但不限於透過如下方式,獲取上述目標任務:
步驟S2021,接收控制台發送的第一任務,上述第一任務包括調度策略、部署地址及任務內容。
在上述步驟S2021中,上述調度設備可以接收控制台(Console)提交的第一任務,其中,在控制台提交上述第一任務至上述調度設備進行部署時,需要指明上述第一任務中的調度策略、部署地址、任務內容、執行引擎等資訊。
步驟S2023,對上述部署地址進行解析,檢測上述部署地址所指示的上述目標設備的狀態。
在上述步驟S2023中,上述目標設備的狀態可以但不限於為目標設備中的執行節點的狀態。
在一種可選的實施例中,調度設備透過對上述部署地址進行解析,以及檢測目標設備的執行節點的狀態,並記錄目標設備的任務快照,對任務內容的格式進行檢查,以判斷上述目標設備的狀態是否為正常狀態。
步驟S2025,若上述目標設備為正常狀態,根據上述任務內容及上述調度策略,產生上述目標任務。
可選的,上述調度策略可以為但不限於以下任意一種調度策略:單點調度、指定調度、全量調度、分散式調度等。
在上述實施例中,若判斷結果為上述目標設備為正常狀態,則根據上述任務內容及上述調度策略,產生上述目標任務。
步驟S204,根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容。
在上述步驟S204中,上述確認信號還包括以下至少之一:任務快照、回覆碼、消費狀態。
可選的,上述調度設備可以透過獲取上述目標設備的設備資訊;並根據獲取到的目標任務及設備資訊,產生對應的確認信號。
在一種可選的實施例中,上述確認信號包括回覆內容欄位,其中,在上述步驟S204中,根據上述目標任務,產生對應的確認信號可以透過如下方法步驟實現:
將上述任務內容添加至上述確認信號的回覆內容欄位中,得到上述確認信號。
在上述可選的實施例中,上述回覆內容欄位可以為下表1中的回覆內容欄位Ack Content,透過將上述目標任務的任務內容添加至回覆內容欄位Ack Content中,進而可以得到上述確認信號。
需要說明的是,若上述回覆內容欄位Ack Content=10201,則表明調度設備向目標設備提交了一個新的任務,回覆內容欄位裡攜帶有新的任務資訊;若上述回覆內容欄位Ack Content=10204,則表明調度設備刪除了目標設備上指定的任務,回覆內容欄位Ack Content為待刪除任務標識。
仍需要說明的是,上述回覆內容欄位Ack Content的欄位取值可以但不限於為上述示例,還可以根據不同的實際情況,選擇不同的欄位進行表示。其中,作為一種可選的實施例,上述確認信號的資料結構可以但不限於為下表1所示:


表1

作為一種可選的實施例,目標設備在啟動時,運行管理器裝載各個執行引擎,其中,每一個執行引擎有各自的命名空間,不同語言實現的執行引擎可以透過行程間通信的方式被管理,運行管理器會向資料匯流排發送廣播,各執行引擎行程接收到廣播後會向運行管理器地址發起引擎註冊請求。
需要說明的是,在調度設備獲取上述目標任務之前,上述目標設備可以獲取本地的設備資訊(例如:CPU、記憶體大小、磁碟大小、網路連結、軟體開發套件SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊等),並將上述設備資訊發送至調度設備,進而實現在調度設備側的註冊。
此外,上述調度設備透過儲存上述設備資訊,完成上述設備資訊的持久化,產生與上述目標設備對應的唯一的運行環境標識,並透過回覆ACK資訊的方式,將與上述目標設備對應的運行環境標識發送至目標設備。
步驟S206,在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
在一種可選的實施例中,上述心跳請求包括以下至少之一:CPU使用率、記憶體使用率、磁碟使用率、所有任務執行的狀態。
需要說明的是,上述心跳請求可以為目標設備每間隔固定時間(例如,30-40秒,並不局限於此)向調度設備所發送的心跳包,可以用於指示當前目標設備與調度設備之間的連接正常,對於上述心跳請求的包內容,本申請並不具體限定,例如,可以但不限於為僅包含包頭的一個空包,可以用於長連接的保活和斷線處理即可。
作為一種可選的實施例,若上述目標設備在調度設備上註冊成功,則上述目標設備可以在本地啟動心跳守護執行緒,並按照預先配置的心率值的固定頻率,向調度設備發送上述心跳請求。
在一種可選的實施例中,在上述步驟S206中,將上述確認信號發送至上述目標設備,可以但不限於透過如下方法步驟實現:
將上述確認信號添加至心跳回覆的資料欄位中;
將上述添加有上述確認信號的上述心跳回覆發送至上述目標設備。
在上述可選的實施例中,在調度設備接收到目標設備發送的心跳請求的情況下,上述調度設備檢測本地是否存在對應的確認信號,若存在對應的確認信號,則在本次心跳請求的心跳回覆中添加確認信號,並將添加有上述確認信號的上述心跳回覆發送至上述目標設備。
在一種可選的實施例中,本申請中的調度設備可以將上述任務內容添加至上述確認信號的回覆內容欄位中,得到上述確認信號,其中,該確認信號的資料結構可以但不限於為上述表1所示,此外,上述確認信號可以但不限於添加至心跳回覆的資料data中,其中,該心跳回覆的資料結構為下表2所示。

表2

需要說明的是,若調度設備檢測本地不存在對應的確認信號,則僅回覆接收到上述心跳請求的確認字元至目標設備,以確認接收到了目標設備的心跳請求。
作為另一種可選的實施例,上述調度設備在依據目標任務,產生對應的確認信號之後,除調度設備在接收到目標設備的心跳請求之後,將與上述心跳請求對應的確認信號發送至上述目標設備的拉取模式之外,還可以在產生對應的確認信號之後,主動推送上述確認信號至目標設備,其中,上述確認信號中包含上述目標任務的任務內容。需要說明的是,上述推送模式可能更加適用於一些低性能設備上,可以減少低性能設備的功耗。
另外,本申請實施例中,還可以採用推送模式和拉取模式結合的組合協議方式,發送包含上述任務內容的確認信號至目標設備,進而使得開發者可以根據實際場景進行切換。例如,上述組合協議方式可以但不限於為:在調度設備在產生上述確認信號之後,推送一條訊息至目標設備,以通知目標設備到調度設備上拉取攜帶目標任務的確認信號。
作為一種可選的實施例,上述目標設備在接收到上述確認信號之後,可以對上述確認信號進行解析,得到上述確認信號中包含的目標任務的任務內容,並完成對上述目標任務的部署以及根據上述任務內容執行上述目標任務。
基於上述實施例所限定的方案可以獲知,獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
透過本申請上述實施例所提供的方案,達到了提高邊緣計算的任務處理速率和邊緣運行系統穩定性的目的,從而實現了透過提高邊緣計算的任務處理速率,減少設備請求的回應時間的技術效果,進而解決了如何將雲端計算邏輯及應用部署到靠近資料來源一側的邊緣設備上運行的技術問題。
以下透過一種具體的實現場景,對本申請提供的上述實施例進行解釋說明,其中,本申請所提供的調度設備中可以包括但不限於:解析器、部署器、狀態機和掃描器等單元模組,其中,上述解析器與上層應用系統連接,接收上層應用系統的邏輯任務批量部署,並接受上述上層應用系統的狀態多維度查詢。
在一種可選的實施例中,上層應用系統作為控制台可以下發第一任務至調度設備中的解析器,上述第一任務包括:調度策略、部署地址及任務內容;上述解析器透過對上述部署地址進行解析,以檢測上述部署地址所指示的上述目標設備的狀態;若上述目標設備為正常狀態,根據上述任務內容及上述調度策略,產生上述目標任務。
在一種可選的實施例中,上述部署器與上述解析器連接,在接收到上述目標任務之後,部署器可以先對上述目標任務標記雙狀態,以產生與上述目標狀態對應的雙狀態記錄,對上述目標任務進行管理,並儲存上述目標任務,構建與上述目標任務對應的ACK信號,以及對目標任務的連接進行授權。
在一種可選的實施例中,上述狀態機與上述部署器連接,狀態機在接收上述目標設備發送的任務同步請求,根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述雙狀態記錄中的上述實際狀態。
在一種可選的實施例中,上述調度設備中部署的狀態機可以對目標任務的雙狀態進行記錄和標識,其中,上述狀態機用於管理上述目標任務生命週期的狀態流轉;上述期望狀態和實際狀態均包括如下至少之一:未運行狀態、運行中狀態、運行結束狀態、運行失敗狀態、運行暫停狀態。
需要說明的是,調度設備在接收到目標設備的任務同步請求之後,可以根據上述任務同步請求中指示的上述目標任務的執行狀態,對本地雙狀態記錄中目標任務的實際狀態進行更新,並確定目標設備已接收到對應的確認信號,進而將本地的上述確認信號進行刪除處理。
在本申請上述可選的實施例中,透過在調度設備中部署解析器、部署器、狀態機和掃描器等單元模組,不僅達到了提高邊緣計算的任務處理速率和邊緣運行系統穩定性的目的,從而實現了透過提高邊緣計算的任務處理速率,減少設備請求的回應時間的技術效果,還可以檢測目標設備和目標任務是否出現異常情況,並根據具體異常情況進行相應的異常處理,可以有效實現對部署的目標任務的生命週期和任務狀態進行監測。
在一種可選的實施例中,為了實現對上述目標任務的執行狀態進行檢測,在上述步驟S202,即獲取目標任務之後,上述方法還包括如下方法步驟:
步驟S203,產生上述目標任務對應的雙狀態記錄。
在上述步驟S203中,調度設備在獲取目標任務之後,產生與目標任務對應的雙狀態記錄,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態。
具體的,可以透過調度設備中的部署器實現目標任務在運行容器中的部署,部署器可以先對上述目標任務標記雙狀態,以產生與上述目標狀態對應的雙狀態記錄。
其中,在上述步驟S206,即將上述確認信號發送至上述目標設備之後,上述方法還包括:
步驟S208,接收上述目標設備發送的任務同步請求;
步驟S210,根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述雙狀態記錄中的上述實際狀態。
基於上述步驟S208至步驟S210所提供的方法步驟,目標設備在接收到上述確認信號的情況下,可以解析上述確認信號中攜帶的目標任務的任務內容,並執行上述目標任務,並將上述目標任務的執行狀態以任務同步請求的方式發送至調度設備,以實現調度設備對本地雙狀態記錄中的實際狀態進行更新。
在一種可選的實施例中,上述調度設備中部署的狀態機可以對目標任務的雙狀態進行記錄和標識,其中,上述狀態機用於管理上述目標任務生命週期的狀態流轉;上述期望狀態和實際狀態均包括如下至少之一:未運行狀態、運行中狀態、運行結束狀態、運行失敗狀態、運行暫停狀態。
需要說明的是,調度設備在接收到目標設備的任務同步請求之後,可以根據上述任務同步請求中指示的上述目標任務的執行狀態,對本地雙狀態記錄中目標任務的實際狀態進行更新,並確定目標設備已接收到對應的確認信號,進而將本地的上述確認信號進行刪除處理。
仍需要說明的是,上述目標設備與調度設備之間的任務狀態同步可以但不限於為以下兩種可選方式:主動同步、被動同步。其中:
被動同步,是指當調度設備接收開發者操作產生的操作信號之後,目標設備可以透過發送心跳請求至調度設備,以拉取到目標任務以及目標任務的任務內容,並在執行完成目標任務中的任務內容之後,立即發送任務同步請求至調度設備進行任務狀態同步。
主動同步,是指目標設備主動發送任務狀態校準請求至調度設備,進行任務狀態同步,其中,當上述目標設備重啟、斷網或異常恢復後,上述目標設備可以採集所有任務的任務狀態,產生包含上述所有任務的任務狀態的上述任務狀態校準請求。
透過上述可選的實施例,本申請透過雙狀態記錄對目標任務的實際狀態和目標狀態進行標識,以及透過在接收到上述目標設備發送的任務同步請求之後,對上述目標任務的實際狀態進行更新,並將本地的上述確認信號進行刪除處理,透過雙狀態標識機制和確認信號消費機制,實現了提高調度設備對目標設備中目標任務處理的穩定性和處理速率。
在一種可選的實施例中,上述調度設備透過雙狀態記錄描述一個目標任務的當前狀態,分別為期望狀態、實際狀態。其中,當上層封裝開發者在任意狀態下對目標任務做的任意操作,所修改的均為期望狀態,並且,上述調度設備可以依據上述期望狀態產生操作信號,以控制目標設備依據上述操作信號執行對應的操作,目標設備在執行對應的操作之後,可以透過發送任務同步請求的方式將上述目標任務的執行狀態發送至調度設備。
圖3a是根據本發明實施例的一種可選的狀態機的狀態轉換示意圖,如圖3a所示,其中,上述上層封裝開發者可以但不限於感知以下狀態:未部署狀態、部署中狀態、部署失敗狀態、部署成功狀態、重置中狀態、重置失敗狀態,其中,未部署狀態亦即為重置成功狀態。其中,允許開發者在任意一種狀態時操作部署、重置操作。
在一種可選的實施例中,上述調度設備中部署的狀態機可以對目標任務的雙狀態進行記錄和標識,其中,上述狀態機用於管理上述目標任務生命週期的狀態流轉;上述期望狀態和實際狀態均包括如下至少之一:未運行狀態、運行中狀態、運行結束狀態、運行失敗狀態、運行暫停狀態。
其中,上述圖3a中存在連接關係的狀態之間的轉換關係可以為以下所述:未部署狀態可以透過提交部署,轉換至部署中狀態;部署中狀態可以透過部署異常轉換至部署失敗狀態;部署失敗狀態可以透過重試轉換至部署中狀態;部署中狀態可以在部署正常的情況下,轉換至部署成功狀態;部署成功狀態可以透過重新部署進入部署中狀態;部署成功狀態可以透過重置操作進入重置中狀態;重置中狀態可以在重置成功的情況下,進入未部署狀態,若在重置異常的情況下,則由重置中狀態轉至重置失敗狀態;在重置失敗狀態之後,還可以透過重試進入重置中狀態,再次進行重置處理。
其中,上述上層封裝開發者可以感知的各個狀態,以及期望狀態和實際狀態中包括的狀態的部分狀態映射表可以為以下表3所示,在表3中,任務對應的雙狀態記錄用(期望狀態,實際狀態)的格式表示為:

表3

圖3b是根據本發明實施例的另一種可選的狀態機的狀態轉換示意圖,如圖3b所示,任務的初始狀態為(0,0),結合表1可知,即期望狀態為未部署,實際狀態為未部署。在提交部署的情況下,任務對應的狀態轉換為(2,1),即期望狀態為部署成功,實際狀態為未運行;在部署異常或異常狀態轉換的情況下,任務對應的狀態轉換為(2,4);相應地,在重試時可以從(2,4)直接切換至(2,1)。在部署成功的情況下,任務對應的狀態轉換為(2,2);若需要重新部署任務,任務對應的狀態切換至(2,1);在撤回操作的情況下,任務對應的狀態從(2,1)切換至(0,2);在任務出現異常的情況下,任務對應的狀態轉換為(0,4);上述任務對應的狀態為(2,4)時,在刪除異常的情況下,任務對應的狀態轉換為(0,4);上述任務對應的狀態為(0,4)時,在重試的情況下,任務對應的狀態轉換為(0,2);上述任務對應的狀態為(0,2)時,在撤回成功的情況下,任務對應的狀態轉換為(0,0);上述任務對應的狀態為(0,4)時,在刪除異常的情況下,任務對應的狀態轉換為(0,0)。
其中,需要說明的是,關於本申請未具體解釋的上述各個狀態作用域的描述,可以參考上述表1中狀態作用域與狀態描述的具體映射關係。
需要說明的是,上述目標任務的狀態描述需要依託於運行環境的同步,而邊緣計算場景下的網路阻塞、運行環境不可靠問題,容易導致一個目標任務已經部署於目標設備,但邊緣端運行環境卻並未回應任何資訊。在此種情況下,無法明確該目標任務是在任務下發環節,是在運行環境的任務執行環節,還是在任務狀態的回覆環節出現的問題。
仍需說明的是,透過本申請中提供的雙狀態標識機制,上述調度設備可以對所部署的目標任務在任何時刻進行狀態描述,對於目標設備不對目標任務的執行狀態進行回覆處理的情況,調度設備可以將目標任務的執行狀態在瞬態和終態之間進行轉換,不會出現目標任務的執行狀態卡死在瞬態的情況。
在一種可選的實施例中,上述產生上述目標任務對應的雙狀態記錄之後,上述方法還包括如下方法步驟:
透過掃描上述雙狀態記錄,判斷上述目標任務是否異常。
可選的,本申請中還可以透過調度設備中的掃描器掃描上述雙狀態記錄,判斷上述目標任務是否異常。
需要說明的是,在大量目標設備需要監控的情況下,可以對上述掃描器進行分組,透過一組非同步的掃描器執行緒對調度設備管理的待掃描的目標對象進行掃描。
在一種實施例中,在目標設備在調度設備中註冊成功之後,雲端的調度設備可以將該目標設備註冊到掃描器執行緒,掃描器可以監測各個目標設備和目標任務。
其中,上述掃描器包括但不限於掃描執行緒組、待掃描對象集合、掃描邏輯函數、異常處理函數等。掃描一個待掃描的目標對象可以存在兩個基本過程,分別為進入管理器、退出管理器,其中,上述退出管理器可以檢測到待掃描對象正常退出與異常退出兩種情況,當異常退出時,可以觸發掃描器中的執行異常處理函數。
在一種可選的實施例中,上述透過掃描上述雙狀態記錄,判斷上述目標任務是否異常可以透過如下方法步驟實現:
步驟S302,檢測上述期望狀態與上述實際狀態是否相同;若在預設時間段內上述期望狀態與上述實際狀態均不相同,觸發異常處理機制;或者,
步驟S304,檢測上述實際狀態是否指示狀態異常;若上述實際狀態指示狀態異常,觸發異常處理機制。
在上述步驟S302至步驟S304中,上述狀態異常可以包括但不限於:當機、斷網等異常情況,其中,在實際狀態已聲明任務異常為終態,其他情況為瞬態,實際狀態指示狀態為終態的情況下,或在上述期望狀態與上述實際狀態不完全一致,例如,在預設時間段內上述期望狀態與上述實際狀態均不相同,則確定上述目標任務異常,觸發異常處理機制。
基於上述可選的實施例,透過檢測目標設備和目標任務是否出現異常情況,並根據具體異常情況進行相應的異常處理,可以有效實現對部署的目標任務的生命週期和任務狀態進行監測。
需要說明的是,在實際狀態與期望狀態一致的情況下,或實際狀態已聲明任務異常為終態,其他情況為瞬態的情況下,對於處於瞬態的目標任務執行對應的操作,例如,調度設備可以將處於瞬態的目標任務丟棄或放入等待佇列中。
此外,本申請中的調度設備可以對處於瞬態的目標任務進行多次檢查,當檢測到該目標任務對應的目標設備處於正常情況下,但目標任務的實際狀態在預定時間內一直處於瞬態時,則可以觸發異常處理機制,例如,可以將該目標任務的實際狀態強制轉化為失敗,並產生變更信號同步至目標設備。
在一種可選的實施例中,在掃描器檢測到目標設備失聯的情況下,調度設備可以檢測上述目標設備中當前運行的目標任務,並產生對應的任務快照,並將上述任務快照記錄到確認信號中。
在另一種可選的實施例中,在目標設備恢復與調度設備的連結的情況下,調度設備可以將上述確認信號同步至目標設備的運行容器中,從而恢復發生故障之前目標設備中執行的目標任務。在當前調度的目標任務量較多時,調度設備可以但不限於分批次回覆目標設備發送的心跳請求。
作為一種可選的實施方式,本申請所提供的上述掃描器可以檢測任務維護的雙狀態中實際狀態與期望狀態是否一致,若在預設時間段內上述期望狀態與上述實際狀態均不相同,例如,在預設時間段內持續中間狀態(即,上述期望狀態與上述實際狀態不相同),則觸發異常處理機制;或者,上述實際狀態指示狀態異常,則觸發異常處理機制。
作為另一種可選的實施方式,本申請所提供的上述掃描器還可以檢測調度設備回覆的確認字元的狀態(例如,當上述確認字元的狀態值為1,可以用於表示存在確認信號,當上述確認字元的狀態值為2,可以表示已將上述確認信號同步至目標設備)。
其中,若上述掃描器檢測到確認信號已作為心跳請求的回覆發送至目標設備,但目標設備一直沒有同步接收到上述確認信號之後的目標任務的執行狀態,則調度設備可以啟動ACK異常處理流程,並標記當前的確認信號,以在目標設備下次發送心跳請求時,再次嘗試將確認信號下發至目標設備,如果上述目標設備多次未響應上述調度設備,則標記該目標設備為狀態異常。
此外,本申請還提供了另一種可選的實施例,在每隔N次或異常恢復之後,目標設備可以掃描當前節點內所有目標任務的執行狀態,並在下次發送至調度設備的心跳請求中追加任務狀態集,亦即,發送任務同步請求至調度設備。
在一種可選的實施例中,圖4是根據本發明實施例的一種可選的任務處理方法的流程圖,如圖4所示,上述獲取目標任務之前,上述方法還包括如下方法步驟:
步驟S402,接收上述目標設備發送的設備資訊。
步驟S404,儲存上述設備資訊,並產生上述目標設備對應的運行環境標識。
步驟S406,將上述運行環境標識發送至上述目標設備。
在一種可選的實施例中,上述設備資訊包括以下至少之一:CPU、記憶體大小、磁碟大小、網路連結、SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊。
基於上述可選的實施例,在調度設備獲取上述目標任務之前,上述目標設備可以獲取設備資訊,並將上述設備資訊發送至調度設備,進而實現目標設備到調度設備的註冊。
並且,上述調度設備可以透過儲存上述設備資訊,完成目標設備資訊的持久化,產生與上述目標設備對應的唯一的運行環境標識,並透過回覆ACK資訊的方式,將與上述目標設備對應的運行環境標識發送至目標設備。
在一種可選的實施例中,在上述步驟S406,即將上述運行環境標識發送至上述目標設備之後,上述方法還包括如下方法步驟:
步驟S408,透過監測上述目標設備發送的心跳請求,判斷上述目標設備是否異常。
基於本申請的一種可選實施例,在目標設備在調度設備中註冊成功之後,雲端的調度設備可以將該目標設備註冊到掃描器執行緒,掃描器可以監測各個目標設備,例如,可以但不限於透過監測心跳的異常來判斷目標設備的異常。
在一種可選的實施例中,圖5是根據本發明實施例的一種可選的任務處理方法的流程圖,如圖5所示,上述步驟S408,即透過監測上述目標設備發送的心跳請求,判斷上述目標設備是否異常包括:
步驟S502,在超過預設時長未接收到上述心跳請求的情況下,確定上述目標設備失去連接。
其中,在上述步驟S502中,若調度設備超過預設時長仍未接收到目標設備發送的心跳請求的,則確定上述調度設備與上述目標設備之間失去連接,即確定上述目標設備存在異常。
步驟S504,從預設的對應關係表中,獲取上述目標設備當前運行的任務;
步驟S506,將當前運行的任務的描述資訊儲存至確認信號中;
步驟S508,在接收到上述目標設備發送的上述心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
基於上述步驟S504至步驟S508所提供的可選實施例,在確定上述目標設備存在異常之後,為實現對目標設備的異常進行檢測和調用異常處理函數對上述待掃描對象進行處理調度設備可以在預先儲存的對應關係表(例如,可以為調度設備的運行環境標識與調度設備中運行的任務所對應關係的快取表)中,依據上述運行環境標識獲取上述目標設備當前運行的任務,並將當前運行的任務的描述資訊儲存至確認信號中,進而,則可以在調度設備接收到上述目標設備發送的上述心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
在一種可選的實施例中,本申請所提供的任務處理方法還包括如下實施步驟:
步驟S602,接收上述目標設備發送的任務狀態校準請求,其中,當上述目標設備重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含上述所有任務的任務狀態的上述任務狀態校準請求;
步驟S604,根據上述任務狀態校準請求進行狀態校準。
基於上述可選的實施例,在目標設備重啟、斷網或異常恢復之後,上述目標設備可以採集上述運行環境下所有的任務狀態,產生包含上述所有任務的任務狀態的上述任務狀態校準請求,並透過主動同步介面發送上述狀態校準請求至調度設備,以便上述調度設備根據上述任務狀態校準請求進行狀態校準。
需要說明的是,上述狀態校準的方法可以為採用所有目標任務的任務狀態更新預先維護的狀態記錄,也可以為將所有目標任務的任務狀態與預先維護的狀態記錄進行比對,本申請對狀態校準的實現方法並不具體限定,其中,若比對結果為狀態不同,則對應返回狀態校準資訊至目標設備。
以下透過一個具體的實施方式,對本申請上述實施例中的任務處理方法進行解釋說明,圖6是根據本發明實施例的一種可選的任務處理方法的交互示意圖,如圖6所示,一種可選的任務處理方法可以但不限於透過以下對話模式實現:
步驟S001,控制台獲取租戶資訊。
具體的,在上述步驟S001中,可以但不限於為上層開發者(例如,註冊開發者等)基於預先認證的帳戶資訊獲取上述租戶資訊。
步驟S002,目標設備在調度設備上進行註冊。
具體的,上述目標設備在調度設備上註冊的過程中,可以但不限於發送設備資訊至上述調度設備,其中,上述設備資訊可以包括以下至少之一:CPU、記憶體大小、磁碟大小、網路連結、SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊。
需要說明的是,在調度設備獲取上述目標任務之前,上述目標設備可以獲取本地的設備資訊(例如:CPU、記憶體大小、磁碟大小、網路連結、軟體開發套件SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊等),並將上述設備資訊發送至調度設備,進而實現在調度設備側的註冊。
需要說明的是,上述調度設備在接收到上述設備資訊之後,上述調度設備可以透過儲存上述設備資訊,完成目標設備資訊的持久化,產生與上述目標設備對應的唯一的運行環境標識,並透過回覆ACK資訊的方式,將與上述目標設備對應的運行環境標識發送至目標設備。
在上述實施例中,上述調度設備還可以初始化掃描執行緒,透過掃描上述雙狀態記錄,判斷上述目標任務是否異常。
步驟S003,調度設備接收控制台發送的第一任務。
在上述步驟S003中,上述調度設備可以接收控制台提交的第一任務,其中,在控制台提交上述第一任務至上述調度設備進行部署時,需要指明上述第一任務中的調度策略、部署地址、任務內容、執行引擎等資訊。
步驟S004,調度設備對上述部署地址進行解析,檢測上述部署地址所指示的上述目標設備的狀態。
在上述步驟S004中,上述目標設備的狀態可以但不限於為目標設備中的執行節點的狀態,並且,在上述目標設備為正常狀態的情況下,執行步驟S005。
在一種可選的實施例中,調度設備透過對上述部署地址進行解析,以及檢測目標設備的執行節點的狀態,並記錄目標設備的任務快照,對任務內容的格式進行檢查,以判斷上述目標設備的狀態是否為正常狀態。
步驟S005,調度設備根據上述任務內容及上述調度策略,產生上述目標任務。
可選的,上述調度策略可以為但不限於以下任意一種調度策略:單點調度、指定調度、全量調度、分散式調度等。
在上述實施例中,若判斷結果為上述目標設備為正常狀態,則根據上述任務內容及上述調度策略,產生上述目標任務。
步驟S006,調度設備獲取目標任務,上述目標任務為需部署至目標設備的任務。
可選的,本申請實施例中的調度設備可以為雲端的調度設備;該調度設備透過獲取需要在邊緣部署的目標任務,並根據上述目標任務,產生對應的確認信號,在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,進而由上述目標設備根據上述任務內容執行上述目標任務。
具體的,上述目標任務為可以在目標設備上部署執行的任務,可以但不限於為資料過濾、格式轉換、基本運算、腳本、規則、配置、應用等任務;上述目標設備可以為邊緣閘道設備、基地台,例如,可以為邊緣雲伺服器;其中,該目標設備上可以部署有用於為各種執行引擎提供運行環境的邊緣端執行節點。
步驟S007,調度設備根據上述目標任務,產生對應的確認信號。
在上述步驟S007中,上述確認信號包含上述目標任務的任務內容,上述確認信號還包括以下至少之一:任務快照、回覆碼、消費狀態。
可選的,上述調度設備可以透過獲取上述目標設備的設備資訊;並根據獲取到的目標任務及設備資訊,產生對應的確認信號。
在一種可選的實施例中,上述確認信號包括回覆內容欄位,其中,調度設備可以透過如下方式根據上述目標任務,產生對應的確認信號:
將上述任務內容添加至上述確認信號的回覆內容欄位中,得到上述確認信號。
在上述可選的實施例中,上述回覆內容欄位可以為表1中的回覆內容欄位Ack Content,透過將上述目標任務的任務內容添加至回覆內容欄位Ack Content中,進而可以得到上述確認信號。
作為一種可選的實施例,目標設備在啟動時,運行管理器裝載各個執行引擎,其中,每一個執行引擎有各自的命名空間,不同語言實現的執行引擎可以透過行程間通信的方式被管理,運行管理器會向資料匯流排發送廣播,各執行引擎行程接收到廣播後會向運行管理器地址發起引擎註冊請求。
步驟S008,調度設備將上述確認信號發送至上述目標設備。
其中,在接收到目標設備的心跳請求的情況下,調度設備將上述確認信號發送至上述目標設備。
上述步驟S008中,由上述目標設備根據上述任務內容執行上述目標任務。
在一種可選的實施例中,上述心跳請求包括以下至少之一:CPU使用率、記憶體使用率、磁碟使用率、所有任務執行的狀態。
作為一種可選的實施例,若上述目標設備在調度設備上註冊成功,則上述目標設備可以在本地啟動心跳守護執行緒,並按照預先配置的心率值的固定頻率,向調度設備發送上述心跳請求。
在一種可選的實施例中,本申請中,上述調度設備可以但不限於透過如下方法步驟,實現將上述確認信號發送至上述目標設備:
將上述確認信號添加至心跳回覆的資料欄位中;
將上述添加有上述確認信號的上述心跳回覆發送至上述目標設備。
在上述可選的實施例中,在調度設備接收到目標設備發送的心跳請求的情況下,上述調度設備檢測本地是否存在對應的確認信號,若存在對應的確認信號,則在本次心跳請求的心跳回覆中添加確認信號,並將添加有上述確認信號的上述心跳回覆發送至上述目標設備。
其中,本申請中的調度設備可以將上述任務內容添加至上述確認信號的回覆內容欄位中,得到上述確認信號,該確認信號的資料結構可以但不限於為上表1所示,此外,上述確認信號可以但不限於添加至心跳回覆的資料data中,其中,該心跳回覆的資料結構為上表2所示。
需要說明的是,若調度設備檢測本地不存在對應的確認信號,則僅回覆接收到上述心跳請求的確認字元至目標設備,以確認接收到了目標設備的心跳請求。
作為另一種可選的實施例,上述調度設備在依據目標任務,產生對應的確認信號之後,除調度設備在接收到目標設備的心跳請求之後,將與上述心跳請求對應的確認信號發送至上述目標設備的拉取模式之外,還可以在產生對應的確認信號之後,主動推送上述確認信號至目標設備,其中,上述確認信號中包含上述目標任務的任務內容。需要說明的是,上述推送模式可能更加適用於一些低性能設備上,可以減少低性能設備的功耗。
另外,本申請實施例中,還可以採用推送模式和拉取模式結合的組合協議方式,發送包含上述任務內容的確認信號至目標設備,進而使得開發者可以根據實際場景進行切換。例如,上述組合協議方式可以但不限於為:在調度設備產生上述確認信號之後,推送一條訊息至目標設備,以通知目標設備到調度設備上拉取攜帶目標任務的確認信號。
步驟S009,上述目標設備依據上述確認信號處理執行上述目標任務。
作為一種可選的實施例,上述目標設備在接收到上述確認信號之後,可以對上述確認信號進行解析,得到上述確認信號中包含的目標任務的任務內容,並完成對上述目標任務的部署以及根據上述任務內容執行上述目標任務。
步驟S010,上述調度設備接收上述目標設備發送的任務同步請求。
步驟S011,調度設備根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述雙狀態記錄中的上述實際狀態。
基於上述步驟S010至步驟S011所提供的方法步驟,目標設備在接收到上述確認信號的情況下,可以解析上述確認信號中攜帶的目標任務的任務內容,並執行上述目標任務,並將上述目標任務的執行狀態以任務同步請求的方式發送至調度設備,以實現調度設備對本地雙狀態記錄中的實際狀態進行更新。
在一種可選的實施例中,上述調度設備中部署的狀態機可以對目標任務的雙狀態進行記錄和標識,其中,上述狀態機用於管理上述目標任務生命週期的狀態流轉;上述期望狀態和實際狀態均包括如下至少之一:未運行狀態、運行中狀態、運行結束狀態、運行失敗狀態、運行暫停狀態。
需要說明的是,調度設備在接收到目標設備的任務同步請求之後,可以根據上述任務同步請求中指示的上述目標任務的執行狀態,對本地雙狀態記錄中目標任務的實際狀態進行更新,並確定目標設備已接收到對應的確認信號,進而將本地的上述確認信號進行刪除處理。
步驟S012,調度設備發送狀態同步確認信號至目標設備;
步驟S013,調度設備透過掃描上述雙狀態記錄,判斷上述目標任務是否異常。
在上述步驟S013中,上述產生上述目標任務對應的雙狀態記錄之後,本申請實施例還可以透過掃描上述雙狀態記錄,判斷上述目標任務是否異常。
在一種可選的實施例中,上述透過掃描上述雙狀態記錄,判斷上述目標任務是否異常可以透過如下方法步驟實現:
檢測上述期望狀態與上述實際狀態是否相同;若在預設時間段內上述期望狀態與上述實際狀態均不相同,觸發異常處理機制;或者,
檢測上述實際狀態是否指示狀態異常;若上述實際狀態指示狀態異常,觸發異常處理機制。
在上述可選的實施例中,上述狀態異常可以包括但不限於:當機、斷網等異常情況,其中,在實際狀態已聲明任務異常為終態,其他情況為瞬態,實際狀態指示狀態為終態的情況下,或在上述期望狀態與上述實際狀態不完全一致,例如,在預設時間段內上述期望狀態與上述實際狀態均不相同,則確定上述目標任務異常,觸發異常處理機制。
基於上述可選的實施例,透過檢測目標設備和目標任務是否出現異常情況,並根據具體異常情況進行相應的異常處理,可以有效實現對部署的目標任務的生命週期和任務狀態進行監測。
需要說明的是,在實際狀態與期望狀態一致的情況下,或實際狀態已聲明任務異常為終態,其他情況為瞬態的情況下,對於處於瞬態的目標任務執行對應的操作,例如,調度設備可以將處於瞬態的目標任務丟棄或放入等待佇列中。
此外,本申請中的調度設備可以對處於瞬態的目標任務進行多次檢查,當檢測到該目標任務對應的目標設備處於正常情況下,但目標任務的實際狀態在預定時間內一直處於瞬態時,則可以觸發異常處理機制,例如,可以將該目標任務的實際狀態強制轉化為失敗,並產生變更信號同步至目標設備。
在一種可選的實施例中,在掃描器檢測到目標設備失聯的情況下,調度設備可以檢測上述目標設備中當前運行的目標任務,並產生對應的任務快照,並將上述任務快照記錄到確認信號中。
在另一種可選的實施例中,在目標設備恢復與調度設備的連結的情況下,調度設備可以將上述確認信號同步至目標設備的運行容器中,從而恢復發生故障之前目標設備中執行的目標任務。在當前調度的目標任務量較多時,調度設備可以但不限於分批次回覆目標設備發送的心跳請求。
步驟S014,調度設備發送任務部署完成的確認資訊至控制台。

實施例 2
在與上述實施例1相同或相似的運行環境下,本申請提供了另一種如圖7所示的任務處理方法。需要說明的是,本申請所提供的任務處理方法可以但不限於在邊緣計算場景下運行或執行,本申請透過對邊緣端運行環境、部署任務狀態、操作信號狀態等進行監測和管理,對邊緣閘道設備的異常進行自檢測和補償,實現了提高邊緣端運行環境穩定性、資料一致性的技術效果。
需要說明的是,本申請所提供的任意一種任務處理方法實施例,均可以應用於智慧型工業、智慧城市、無人超市、智慧型飯店等新興物聯網領域,以提高邊緣計算的任務處理速率,減少設備請求的回應時間。
圖7是根據本發明實施例的另一種任務處理方法的流程圖,如圖7所示,本申請實施例所提供的任務處理方法可以透過如下方法步驟實現:
步驟S702,將心跳請求發送至調度設備。
需要說明的是,本申請實施例的執行主體可以為目標設備,例如,邊緣閘道設備、基地台,例如,可以為邊緣雲伺服器,上述調度設備可以為雲端的調度設備;其中,該目標設備上可以部署有用於為各種執行引擎提供運行環境的執行節點。
在一種可選的實施例中,上述心跳請求包括以下至少之一:CPU使用率、記憶體使用率、磁碟使用率、所有任務執行的狀態。
需要說明的是,上述心跳請求可以為目標設備每間隔固定時間(例如,30-40秒,並不局限於此)向調度設備所發送的心跳包,可以用於指示當前目標設備與調度設備之間的連接正常,對於上述心跳請求的包內容本申請並不具體限定,例如,可以但不限於為僅包含包頭的一個空包,可以用於長連接的保活和斷線處理即可。
作為一種可選的實施例,若上述目標設備在調度設備上註冊成功,則上述目標設備可以在本地啟動心跳守護執行緒,並按照預先配置的心率值的固定頻率,向調度設備發送上述心跳請求。
步驟S704,接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的。
可選的,上述目標任務為可以在目標設備上部署執行的任務,可以但不限於為腳本、規則、配置、應用、資料過濾、格式轉換、基本運算等任務。
在上述可選的實施例中,上述調度設備透過獲取需在邊緣端部署的目標任務,並根據上述目標任務,產生對應的確認信號,在接收到目標設備的心跳請求的情況下,發送與上述心跳請求對應的確認信號至目標設備,進而由上述目標設備根據上述任務內容執行上述目標任務。
其中,上述調度設備可以透過獲取上述目標設備的設備資訊;並根據獲取到的目標任務及設備資訊,產生對應的確認信號。
在一種可選的實施例中,上述確認信號包括回覆內容欄位,其中,上述根據上述目標任務,產生對應的確認信號包括:
將上述任務內容添加至上述確認信號的回覆內容欄位中,得到上述確認信號。
在一種可選的實施例中,上述將上述確認信號發送至上述目標設備,可以但不限於透過如下方法步驟實現:
將上述確認信號添加至心跳回覆的資料欄位中;
將上述添加有上述確認信號的上述心跳回覆發送至上述目標設備。
在上述可選的實施例中,在調度設備接收到目標設備發送的心跳請求的情況下,上述調度設備檢測本地是否存在對應的確認信號,若存在對應的確認信號,則在本次心跳請求的心跳回覆中添加確認信號,並將添加有上述確認信號的上述心跳回覆發送至上述目標設備。
作為一種可選的實施例,若調度設備檢測本地不存在對應的確認信號,則僅回覆接收到上述心跳請求的確認字元至目標設備。
作為另一種可選的實施例,上述調度設備在依據目標任務,產生對應的確認信號之後,除調度設備在接收到目標設備的心跳請求之後,將與上述心跳請求對應的確認信號發送至上述目標設備的拉取模式之外,還可以在產生對應的確認信號之後,主動推送上述確認信號至目標設備,其中,上述確認信號中包含上述目標任務的任務內容。需要說明的是,上述推送模式可能更加適用於一些低性能設備上,可以減少低性能設備的功耗。
另外,本申請實施例中,還可以採用推送模式和拉取模式結合的組合協議方式,發送包含上述任務內容的確認信號至目標設備,進而使得開發者可以根據實際場景進行切換。例如,上述組合協議方式可以但不限於為:在調度設備在產生上述確認信號之後,推送一條訊息至目標設備,以通知目標設備到調度設備上拉取攜帶目標任務的確認信號。
步驟S706,根據上述任務內容執行上述目標任務。
在一種可選的實施例中,上述目標設備在接收到上述確認信號之後,可以對上述確認信號進行解析,得到上述確認信號中包含的目標任務的任務內容,並完成對上述目標任務的部署以及根據上述任務內容執行上述目標任務。
在一種可選的實施例中,上述根據上述任務內容執行上述目標任務之後,上述方法還包括:
將任務同步請求發送至上述調度設備,上述任務同步請求用於指示上述目標任務的執行狀態,以便上述調度設備根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述目標任務對應的雙狀態記錄中的實際狀態;
其中,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態。
基於上述實施例所限定的方案可以獲知,透過將心跳請求發送至調度設備;接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的;根據上述任務內容執行上述目標任務。
透過本申請上述實施例所提供的方案,達到了提高邊緣計算的任務處理速率和邊緣運行系統穩定性的目的,從而實現了透過提高邊緣計算的任務處理速率,減少設備請求的回應時間的技術效果,進而解決了如何將雲端計算邏輯及應用部署到靠近資料來源一側的邊緣設備上運行的技術問題。
在一種可選的實施例中,圖8是根據本發明實施例的另一種可選的任務處理方法的流程圖,如圖8所示,在上述步驟S702,即在將心跳請求發送至調度設備之前,上述方法還包括如下方法步驟:
步驟S802,採集設備資訊;
步驟S804,將上述設備資訊發送至上述調度設備,以便上述調度設備儲存上述設備資訊,並產生對應的運行環境標識;
步驟S806,接收上述調度設備發送的運行環境標識。
在一種可選的實施例中,上述設備資訊包括以下至少之一:CPU、記憶體大小、磁碟大小、網路連結、SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊。
本申請中,作為一種可選的實施例,在調度設備獲取上述目標任務之前,上述目標設備可以獲取本地的設備資訊(例如:CPU、記憶體大小、磁碟大小、網路連結、軟體開發套件SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊等),並將上述設備資訊發送至調度設備,進而實現在調度設備側的註冊,以便上述調度設備儲存上述設備資訊,並產生對應的運行環境標識。
此外,上述調度設備透過儲存上述設備資訊,完成上述設備資訊的持久化,產生與上述目標設備對應的唯一的運行環境標識,並透過回覆ACK資訊的方式,將與上述目標設備對應的運行環境標識發送至目標設備。
在一種可選的實施例中,在上述步驟S806,即在接收上述調度設備發送的運行環境標識之後,上述方法還包括:
按照預先配置的頻率,向上述調度設備發送心跳請求。
其中,上述心跳請求包含以下至少之一:CPU使用率、記憶體使用率、磁碟使用率。
作為一種可選的實施例,若上述目標設備在調度設備上註冊成功,則上述目標設備可以在本地啟動心跳守護執行緒,並按照預先配置的心率值的固定頻率,向調度設備發送上述心跳請求。
在一種可選的實施例中,圖9是根據本發明實施例的另一種可選的任務處理方法的流程圖,如圖9所示,本申請所提供的任務處理方法中,還包括如下實施步驟:
步驟S902,當重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含上述所有任務的任務狀態的任務狀態校準請求;
步驟S904,將上述任務狀態校準請求發送至上述調度設備,以便上述調度設備根據上述任務狀態校準請求進行狀態校準。
基於上述步驟S902至步驟S904所提供的可選實施例,在目標設備重啟、斷網或異常恢復之後,上述目標設備可以採集上述運行環境下所有的任務狀態,產生包含上述所有任務的任務狀態的上述任務狀態校準請求,並透過主動同步介面發送上述狀態校準請求至調度設備,以便上述調度設備根據上述任務狀態校準請求進行狀態校準。
需要說明的是,上述狀態校準的方法可以為採用所有目標任務的任務狀態更新預先維護的狀態記錄,也可以為將所有目標任務的任務狀態與預先維護的狀態記錄進行比對,本申請對狀態校準的實現方法並不具體限定,其中,若比對結果為狀態不同,則對應返回狀態校準資訊至目標設備。
此外,仍需要說明的是,本實施例的可選或優選實施方式可以參見實施例1中的相關描述,此處不再贅述。

實施例 3
在與上述實施例1相同或相似的運行環境下,本申請提供了如圖10所示的任務處理方法。需要說明的是,本申請所提供的任務處理方法可以但不限於在邊緣計算場景下運行或執行,本申請透過對邊緣端運行環境、部署任務狀態、操作信號狀態等進行監測和管理,對邊緣閘道設備的異常進行自檢測和補償,實現了提高邊緣端運行環境穩定性、資料一致性的技術效果。
需要說明的是,本申請所提供的任意一種任務處理方法實施例,均可以應用於智慧型工業、智慧城市、無人超市、智慧型飯店等新興物聯網領域,以提高邊緣計算的任務處理速率,減少設備請求的回應時間。
圖10是根據本發明實施例的又一種任務處理方法的流程圖,如圖10所示,本申請實施例所提供的任務處理方法可以透過如下方法步驟實現:
步驟S1002,啟動掃描執行緒。
需要說明的是,本申請實施例的執行主體可以為調度設備,為防止出現同一管理器啟動多個掃描執行緒的問題,可以透過調度設備中的掃描器對管理器啟動的各個掃描執行緒進行掃描,其中,在啟動掃描執行緒之前,本申請實施例中還可以檢測當前機器執行緒的運行情況。
步驟S1004,在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量。
在一種可選的實施例中,上述待掃描對象包括目標設備、目標任務。
需要說明的是,在大量目標設備需要監控的情況下,可以對上述掃描器進行分組,透過調用掃描邏輯函數,採用一組非同步的掃描器執行緒對調度設備管理的待掃描的目標對象進行掃描。
作為一種可選的實施例,在調度設備啟動時,可以根據快取的對應關係表,透過調度設備中的掃描器對管理器啟動的各個掃描執行緒進行掃描,並且,在啟動掃描執行緒前可以檢測當前機器執行緒的運行情況,以防止出現同一管理器啟動多個掃描執行緒的現象。另外,如果快取的對應關係表丟失,則可以透過在註冊監控平台流程中啟動掃描執行緒。
在本申請實施例中,可以由一個掃描執行緒管理一組待掃描對象,每隔一定的時間後對待掃描對象集合執行掃描邏輯函數,如果確定當前的待掃描對象存在異常,則調度設備對異常的待掃描對象進行計數,計數的數值可以表徵異常的待掃描對象的數量。其中,待掃描對象正常則計數為-1,待掃描對象異常則計數為1,計數的最低值為0。
需要說明的是,在本申請提供的實施例中,上述掃描執行緒可以但不限於以間隔時間為尾碼進行命名,以保障每組掃描的間隔時間不同。
步驟S1006,若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
在本申請中,透過對異常的待掃描對象的進行計數,得到異常的待掃描對象的數量,並將該異常的待掃描對象的數量與預設的閾值進行比較,若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理;若上述數量小於上述預設閾值,則不進行處理。
此外,在一種可選的實施例中,在目標設備在調度設備中註冊成功之後,雲端的調度設備可以將該目標設備註冊到掃描器執行緒,掃描器可以監測各個目標設備和目標任務。
其中,上述掃描器包括但不限於掃描執行緒組、待掃描對象集合、掃描邏輯函數、異常處理函數等。掃描一個待掃描的目標對象可以但不限於包括兩個基本過程,分別為進入管理器、退出管理器。
其中,上述進入管理器,一個待掃描對象可以根據一定規則被分配到一個進入管理器下,分配規則可以根據具體情況而不同,本申請並不具體限定。
其中,上述退出管理器可以檢測到待掃描對象正常退出與異常退出兩種情況,當異常退出時,可以觸發掃描器中的執行異常處理函數。
基於上述實施例所限定的方案可以獲知,透過啟動掃描執行緒;在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量;若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
可以明確的是,透過檢測目標設備和目標任務是否出現異常情況,並根據具體異常情況進行相應的異常處理,可以有效實現對部署的目標任務的生命週期和任務狀態進行監測。
透過本申請上述實施例所提供的方案,達到了提高邊緣計算的任務處理速率和邊緣運行系統穩定性的目的,從而實現了透過提高邊緣計算的任務處理速率,減少設備請求的回應時間的技術效果,進而解決了如何將雲端計算邏輯及應用部署到靠近資料來源一側的邊緣設備上運行的技術問題。
在一種可選的實施例中,在上述待掃描對象包括上述目標設備的情況下,上述調用異常處理函數對上述待掃描對象進行處理包括如下方法步驟:
步驟S1102,從預設的對應關係表中,獲取上述目標設備當前運行的任務。
步驟S1104,將當前運行的任務的描述資訊儲存至確認信號中;
步驟S1106,在接收到上述目標設備發送的心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
基於上述步驟S1102至步驟S1106所提供的可選實施例,在確定上述目標設備存在異常之後,為實現對目標設備的異常進行檢測和調用異常處理函數對上述待掃描對象進行處理,上述調度設備在預先儲存的對應關係表(例如,可以為調度設備的運行環境標識與調度設備中運行的任務所對應關係的快取表)中,依據上述運行環境標識獲取上述目標設備當前運行的任務,並將當前運行的任務的描述資訊儲存至確認信號中,進而,則可以在調度設備接收到上述目標設備發送的上述心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
此外,若調度設備超過預設時長仍未接收到目標設備發送的心跳請求的,則確定上述調度設備與上述目標設備之間失去連接,即確定上述目標設備存在異常,為實現對目標設備的異常進行檢測和調用異常處理函數對上述待掃描對象進行處理,仍可以但不限於採用上述處理方法對異常的目標設備進行處理。
作為一種可選的實施例,當目標設備向雲端的調度設備進行註冊時,進入調度設備的掃描器,檢測到目標設備或者目標任務異常之後,異常退出。其中,掃描間隔時間可以為目標設備的註冊心率值向上取整之後乘以2,但並不局限於此,具體以可以實現本申請實施例為准。
另外,在目標設備出現上述異常的情況下,還可以但不限於採用以下處理方式進行處理:抓取該目標設備運行中的目標任務的任務快照,產生操作信號集,並等待目標設備重新聯網或者啟動之後,重新恢復上述目標任務。
在一種可選的實施例中,在上述待掃描對象包括上述目標任務的情況下,上述調用異常處理函數對上述待掃描對象進行處理,可以包括以下處理方式:
將上述目標任務對應的雙狀態記錄中的實際狀態設置為異常狀態,其中,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態。
在一種可選的實施例中,上述確認信號包括回覆內容欄位,其中,調度設備可以透過如下方式根據上述目標任務,產生對應的確認信號:
將上述任務內容添加至上述確認信號的回覆內容欄位中,得到上述確認信號。
在一種可選的實施例中,上述調度設備可以但不限於透過如下方法步驟,實現將上述確認信號發送至上述目標設備:
將上述確認信號添加至心跳回覆的資料欄位中;
將上述添加有上述確認信號的上述心跳回覆發送至上述目標設備。
在上述可選的實施例中,在調度設備接收到目標設備發送的心跳請求的情況下,上述調度設備檢測本地是否存在對應的確認信號,若存在對應的確認信號,則在本次心跳請求的心跳回覆中添加確認信號,並將添加有上述確認信號的上述心跳回覆發送至上述目標設備。
在一種可選的實施例中,目標設備在接收到上述確認信號的情況下,可以解析上述確認信號中攜帶的目標任務的任務內容,並執行上述目標任務,並將上述目標任務的執行狀態以任務同步請求的方式發送至調度設備,以實現調度設備對本地雙狀態記錄中的實際狀態進行更新。
在一種可選的實施例中,上述調度設備中部署的狀態機可以對目標任務的雙狀態進行記錄和標識,其中,上述狀態機用於管理上述目標任務生命週期的狀態流轉;上述期望狀態和實際狀態均包括如下至少之一:未運行狀態、運行中狀態、運行結束狀態、運行失敗狀態、運行暫停狀態。
作為一種可選的實施方式,本申請所提供的上述掃描器可以檢測任務維護的雙狀態中實際狀態與期望狀態是否一致,若在預設時間段內上述期望狀態與上述實際狀態均不相同,例如,在預設時間段內持續中間狀態(中間狀態,即目標任務的實際狀態和目標狀態不相同的情況),則觸發異常處理機制;或者,上述實際狀態指示狀態異常,則觸發異常處理機制。
需要說明的是,調度設備在接收到目標設備的任務同步請求之後,可以根據上述任務同步請求中指示的上述目標任務的執行狀態,對本地雙狀態記錄中目標任務的實際狀態進行更新,並確定目標設備已接收到對應的確認信號,進而將本地的上述確認信號進行刪除處理。
其中,在一種可選的實施例中,上述狀態異常可以包括但不限於:當機、斷網等異常情況,其中,在實際狀態已聲明任務異常為終態,其他情況為瞬態,實際狀態指示狀態為終態的情況下,或在上述期望狀態與上述實際狀態不完全一致,例如,在預設時間段內上述期望狀態與上述實際狀態均不相同,則確定上述目標任務異常,觸發異常處理機制。
仍需要說明的是,在實際狀態與期望狀態一致的情況下,或實際狀態已聲明任務異常為終態,其他情況為瞬態的情況下,對於處於瞬態的目標任務執行對應的操作,例如,調度設備可以將處於瞬態的目標任務丟棄或放入等待佇列中。
此外,本申請中的調度設備可以對處於瞬態的目標任務進行多次檢查,當檢測到該目標任務對應的目標設備處於正常情況下,但目標任務的實際狀態在預定時間內一直處於瞬態時,則可以觸發異常處理機制,例如,可以將該目標任務的實際狀態強制轉化為失敗,並產生變更信號同步至目標設備。
作為另一種可選的實施例,當目標任務被目標設備拉取時,目標任務進入調度設備的掃描器,回覆目標任務的狀態或異常處理完成之後退出。其中,掃描間隔時間可以為固定時間
另外,在目標任務出現上述異常的情況下,還可以但不限於採用以下處理方式進行處理:若發現運行環境鏈路正常,但目標任務的狀態長時間處於中間狀態,則將狀態轉化為終態,也即確定當前目標任務為狀態異常。
此外,仍需要說明的是,本實施例的可選或優選實施方式可以參見實施例1和2中的相關描述,此處不再贅述。
需要說明的是,對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明並不受所描述的動作順序的限制,因為依據本發明,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模組並不一定是本發明所必須的。
透過以上的實施方式的描述,本領域的技術人員可以清楚地瞭解到根據上述實施例的方法可借助軟體加必需的通用硬體平台的方式來實現,當然也可以透過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該電腦軟體產品儲存在一個儲存媒體(如ROM/RAM、磁碟、光碟)中,包括若干指令用以使得一台終端設備(可以是手機,電腦,伺服器,或者網路設備等)執行本發明各個實施例上述的方法。

實施例 4
根據本發明實施例,還提供了一種用於實施上述任務處理方法的任務處理裝置,圖11是根據本發明實施例的一種任務處理裝置的結構示意圖,如圖11所示,該裝置包括:獲取模組110、產生模組112、通訊模組114,其中,
獲取模組110,用於獲取目標任務,上述目標任務為需部署至目標設備的任務;
產生模組112,用於根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;
通訊模組114,用於在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
此處需要說明的是,上述獲取模組110、產生模組112、通訊模組114對應於實施例1中的步驟S202至步驟S206,三個模組與對應的步驟所實現的實例和應用場景相同,但不限於上述實施例1所公開的內容。需要說明的是,上述模組作為裝置的一部分可以運行在實施例1提供的電腦終端10中。
此外,仍需要說明的是,本實施例的可選或優選實施方式可以參見實施例1、2和3中的相關描述,此處不再贅述。

實施例 5
根據本發明實施例,還提供了另一種用於實施上述任務處理方法的任務處理裝置,圖12是根據本發明實施例的一種任務處理裝置的結構示意圖,如圖12所示,該裝置包括:發送模組120、接收模組122、執行模組124,其中,
發送模組120,用於將心跳請求發送至調度設備;
接收模組122,用於接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的;
執行模組124,用於根據上述任務內容執行上述目標任務。
此處需要說明的是,上述發送模組120、接收模組122、執行模組124對應於實施例2中的步驟S702至步驟S706,三個模組與對應的步驟所實現的實例和應用場景相同,但不限於上述實施例2所公開的內容。需要說明的是,上述模組作為裝置的一部分可以運行在實施例1提供的電腦終端10中。
此外,仍需要說明的是,本實施例的可選或優選實施方式可以參見實施例1、2和3中的相關描述,此處不再贅述。

實施例 6
根據本發明實施例,還提供了又一種用於實施上述任務處理方法的任務處理裝置,圖13是根據本發明實施例的一種任務處理裝置的結構示意圖,如圖13所示,該裝置包括:啟動模組132、掃描模組134、調用模組136,其中,
啟動模組132,用於啟動掃描執行緒;
掃描模組134,用於在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量;
調用模組136,用於若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
此處需要說明的是,上述啟動模組132、掃描模組134、調用模組136對應於實施例3中的步驟S1002至步驟S1006,三個模組與對應的步驟所實現的實例和應用場景相同,但不限於上述實施例3所公開的內容。需要說明的是,上述模組作為裝置的一部分可以運行在實施例1提供的電腦終端10中。
此外,仍需要說明的是,本實施例的可選或優選實施方式可以參見實施例1、2和3中的相關描述,此處不再贅述。

實施例 7
根據本發明實施例的另一態樣,還提供了一種任務處理系統,可以包括但不限於以下的任務處理裝置:
根據本發明實施例,還提供了一種用於實施上述任務處理方法的任務處理裝置,該裝置包括:獲取模組110,用於獲取目標任務,上述目標任務為需部署至目標設備的任務;產生模組112,用於根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;通訊模組114,用於在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
根據本發明實施例,還提供了另一種用於實施上述任務處理方法的任務處理裝置,該裝置包括:發送模組120,用於將心跳請求發送至調度設備;接收模組122,用於接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的;執行模組124,用於根據上述任務內容執行上述目標任務。
根據本發明實施例,還提供了又一種用於實施上述任務處理方法的任務處理裝置,該裝置包括:啟動模組132,用於啟動掃描執行緒;掃描模組134,用於在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量;調用模組136,用於若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
需要說明的是,本實施例的可選或優選實施方式可以參見實施例1、2和3中的相關描述,此處不再贅述。

實施例 8
本發明的實施例可以提供一種電腦終端,該電腦終端可以是電腦終端群中的任意一個電腦終端設備。可選地,在本實施例中,上述電腦終端也可以替換為移動終端等終端設備。
可選地,在本實施例中,上述電腦終端可以位於電腦網路的多個網路設備中的至少一個網路設備。
本申請實施例1、實施例2、實施例3所提供的方法實施例可以在移動終端、電腦終端或者類似的運算裝置中執行。此處需要說明的是,在一些可選實施例中,上述圖1所示的電腦終端10可以包括硬體元件(包括電路)、軟體元件(包括儲存在電腦可讀媒體上的電腦代碼)、或硬體元件和軟體元件兩者的結合。應當指出的是,圖1僅為特定具體實例的一個實例,並且旨在示出可存在於上述電腦終端10中的部件的類型。
在本實施例中,上述電腦終端可以執行應用程式的任務處理方法中以下步驟的程式碼:獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
可選的,上述處理器還可以執行如下步驟的程式碼:產生上述目標任務對應的雙狀態記錄,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態;
可選的,上述處理器還可以執行如下步驟的程式碼:接收上述目標設備發送的任務同步請求;根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述雙狀態記錄中的上述實際狀態。
可選的,上述處理器還可以執行如下步驟的程式碼:透過掃描上述雙狀態記錄,判斷上述目標任務是否異常。
可選的,上述處理器還可以執行如下步驟的程式碼:檢測上述期望狀態與上述實際狀態是否相同;若在預設時間段內上述期望狀態與上述實際狀態均不相同,觸發異常處理機制;或者,檢測上述實際狀態是否指示狀態異常;若上述實際狀態指示狀態異常,觸發異常處理機制。
可選的,上述處理器還可以執行如下步驟的程式碼:接收控制台發送的第一任務,上述第一任務包括調度策略、部署地址及任務內容;對上述部署地址進行解析,檢測上述部署地址所指示的上述目標設備的狀態;若上述目標設備為正常狀態,根據上述任務內容及上述調度策略,產生上述目標任務。
可選的,上述處理器還可以執行如下步驟的程式碼:接收上述目標設備發送的設備資訊;儲存上述設備資訊,並產生上述目標設備對應的運行環境標識;將上述運行環境標識發送至上述目標設備。
可選的,上述處理器還可以執行如下步驟的程式碼:獲取上述設備資訊;根據上述目標任務及上述設備資訊,產生上述確認信號,上述確認信號還包括以下至少之一:任務快照、回覆碼、消費狀態。
可選的,上述處理器還可以執行如下步驟的程式碼:透過監測上述目標設備發送的心跳請求,判斷上述目標設備是否異常。
可選的,上述處理器還可以執行如下步驟的程式碼:在超過預設時長未接收到上述心跳請求的情況下,確定上述目標設備失去連接;從預設的對應關係表中,獲取上述目標設備當前運行的任務;將當前運行的任務的描述資訊儲存至確認信號中;在接收到上述目標設備發送的上述心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
可選的,上述處理器還可以執行如下步驟的程式碼:接收上述目標設備發送的任務狀態校準請求,其中,當上述目標設備重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含上述所有任務的任務狀態的上述任務狀態校準請求;根據上述任務狀態校準請求進行狀態校準。
可選的,上述處理器還可以執行如下步驟的程式碼:將心跳請求發送至調度設備;接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的;根據上述任務內容執行上述目標任務。
可選的,上述處理器還可以執行如下步驟的程式碼:將任務同步請求發送至上述調度設備,上述任務同步請求用於指示上述目標任務的執行狀態,以便上述調度設備根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述目標任務對應的雙狀態記錄中的實際狀態;其中,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態。
可選的,上述處理器還可以執行如下步驟的程式碼:採集設備資訊;將上述設備資訊發送至上述調度設備,以便上述調度設備儲存上述設備資訊,並產生對應的運行環境標識;接收上述調度設備發送的運行環境標識。
可選的,上述處理器還可以執行如下步驟的程式碼:按照預先配置的頻率,向上述調度設備發送心跳請求,上述心跳請求包含以下至少之一:CPU使用率、記憶體使用率、磁碟使用率。
可選的,上述處理器還可以執行如下步驟的程式碼:當重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含上述所有任務的任務狀態的任務狀態校準請求;將上述任務狀態校準請求發送至上述調度設備,以便上述調度設備根據上述任務狀態校準請求進行狀態校準。
可選的,上述處理器還可以執行如下步驟的程式碼:啟動掃描執行緒;在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量;若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
可選的,上述處理器還可以執行如下步驟的程式碼:從預設的對應關係表中,獲取上述目標設備當前運行的任務;將當前運行的任務的描述資訊儲存至確認信號中;在接收到上述目標設備發送的心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
可選的,上述處理器還可以執行如下步驟的程式碼:將上述目標任務對應的雙狀態記錄中的實際狀態設置為異常狀態,其中,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態。
本領域普通技術人員可以理解,圖1所示的結構僅為示意,電腦終端也可以是智慧型手機(如Android手機、iOS手機等)、平板電腦、掌上型電腦以及移動互聯網設備(Mobile Internet Devices,MID)、PAD等終端設備。圖1其並不對上述電子裝置的結構造成限定。例如,電腦終端10還可包括比圖10中所示更多或者更少的元件(如網路介面、顯示裝置等),或者具有與圖1所示不同的配置。
本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以透過程式來指令終端設備相關的硬體來完成,該程式可以儲存於一電腦可讀儲存媒體中,儲存媒體可以包括:快閃記憶體盤、唯讀記憶體(Read-Only Memory,ROM)、隨機存取記憶體(Random Access Memory,RAM)、磁碟或光碟等。

實施例 9
本發明的實施例還提供了一種儲存媒體。可選地,在本實施例中,上述儲存媒體可以用於保存上述實施例1、實施例2及實施例3所提供的任務處理方法所執行的程式碼。
可選地,在本實施例中,上述儲存媒體可以位於電腦網路中電腦終端群中的任意一個電腦終端中,或者位於移動終端群中的任意一個移動終端中。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:獲取目標任務,上述目標任務為需部署至目標設備的任務;根據上述目標任務,產生對應的確認信號,上述確認信號包含上述目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將上述確認信號發送至上述目標設備,其中,由上述目標設備根據上述任務內容執行上述目標任務。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:產生上述目標任務對應的雙狀態記錄,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態;
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:接收上述目標設備發送的任務同步請求;根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述雙狀態記錄中的上述實際狀態。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:透過掃描上述雙狀態記錄,判斷上述目標任務是否異常。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:檢測上述期望狀態與上述實際狀態是否相同;若在預設時間段內上述期望狀態與上述實際狀態均不相同,觸發異常處理機制;或者,檢測上述實際狀態是否指示狀態異常;若上述實際狀態指示狀態異常,觸發異常處理機制。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:接收控制台發送的第一任務,上述第一任務包括調度策略、部署地址及任務內容;對上述部署地址進行解析,檢測上述部署地址所指示的上述目標設備的狀態;若上述目標設備為正常狀態,根據上述任務內容及上述調度策略,產生上述目標任務。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:接收上述目標設備發送的設備資訊;儲存上述設備資訊,並產生上述目標設備對應的運行環境標識;將上述運行環境標識發送至上述目標設備。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:獲取上述設備資訊;根據上述目標任務及上述設備資訊,產生上述確認信號,上述確認信號還包括以下至少之一:任務快照、回覆碼、消費狀態。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:透過監測上述目標設備發送的心跳請求,判斷上述目標設備是否異常。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:在超過預設時長未接收到上述心跳請求的情況下,確定上述目標設備失去連接;從預設的對應關係表中,獲取上述目標設備當前運行的任務;將當前運行的任務的描述資訊儲存至確認信號中;在接收到上述目標設備發送的上述心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:接收上述目標設備發送的任務狀態校準請求,其中,當上述目標設備重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含上述所有任務的任務狀態的上述任務狀態校準請求;根據上述任務狀態校準請求進行狀態校準。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:將心跳請求發送至調度設備;接收上述調度設備發送的與上述心跳請求對應的確認信號,上述確認信號包含目標任務的任務內容,上述確認信號為上述調度設備獲取到上述目標任務後產生的;根據上述任務內容執行上述目標任務。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:將任務同步請求發送至上述調度設備,上述任務同步請求用於指示上述目標任務的執行狀態,以便上述調度設備根據上述任務同步請求中指示的上述目標任務的執行狀態,更新上述目標任務對應的雙狀態記錄中的實際狀態;其中,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:採集設備資訊;將上述設備資訊發送至上述調度設備,以便上述調度設備儲存上述設備資訊,並產生對應的運行環境標識;接收上述調度設備發送的運行環境標識。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:按照預先配置的頻率,向上述調度設備發送心跳請求,上述心跳請求包含以下至少之一:CPU使用率、記憶體使用率、磁碟使用率。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:當重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含上述所有任務的任務狀態的任務狀態校準請求;將上述任務狀態校準請求發送至上述調度設備,以便上述調度設備根據上述任務狀態校準請求進行狀態校準。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:啟動掃描執行緒;在上述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量;若上述數量大於或等於預設閾值,調用異常處理函數對上述待掃描對象進行處理。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:從預設的對應關係表中,獲取上述目標設備當前運行的任務;將當前運行的任務的描述資訊儲存至確認信號中;在接收到上述目標設備發送的心跳請求的情況下,將儲存有上述描述資訊的確認信號發送至上述目標設備。
可選地,在本實施例中,儲存媒體被設置為儲存用於執行以下步驟的程式碼:將上述目標任務對應的雙狀態記錄中的實際狀態設置為異常狀態,其中,上述雙狀態記錄包括期望狀態及實際狀態,上述期望狀態用於指示預測執行上述目標任務的狀態,上述實際狀態用於指示實際執行上述目標任務的狀態。
上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
在本發明的上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的技術內容,可透過其它的方式實現。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或元件可以結合或者可以集成到另一個系統,或一些特徵可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是透過一些介面,單元或模組的間接耦合或通信連接,可以是電性或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分佈到多個網路單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用軟體功能單元的形式實現。
所述集成的單元如果以軟體功能單元的形式實現並作為獨立的產品銷售或使用時,可以儲存在一個電腦可讀取儲存媒體中。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟體產品的形式體現出來,該電腦軟體產品儲存在一個儲存媒體中,包括若干指令用以使得一台電腦設備(可為個人電腦、伺服器或者網路設備等)執行本發明各個實施例所述方法的全部或部分步驟。而前述的儲存媒體包括:USB隨身碟、唯讀記憶體(ROM,Read-Only Memory)、隨機存取記憶體(RAM,Random Access Memory)、移動硬碟、磁碟或者光碟等各種可以儲存程式碼的媒體。
以上所述僅是本發明的優選實施方式,應當指出,對於本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護範圍。
10‧‧‧電腦終端
102‧‧‧處理器
104‧‧‧記憶體
106‧‧‧傳輸裝置
S202‧‧‧方法步驟
S204‧‧‧方法步驟
S206‧‧‧方法步驟
S402‧‧‧方法步驟
S404‧‧‧方法步驟
S406‧‧‧方法步驟
S408‧‧‧方法步驟
S502‧‧‧方法步驟
S504‧‧‧方法步驟
S506‧‧‧方法步驟
S508‧‧‧方法步驟
S702‧‧‧方法步驟
S704‧‧‧方法步驟
S706‧‧‧方法步驟
S802‧‧‧方法步驟
S804‧‧‧方法步驟
S806‧‧‧方法步驟
S902‧‧‧方法步驟
S904‧‧‧方法步驟
S1002‧‧‧方法步驟
S1004‧‧‧方法步驟
S1006‧‧‧方法步驟
110‧‧‧獲取模組
112‧‧‧產生模組
114‧‧‧通訊模組
120‧‧‧發送模組
122‧‧‧接收模組
124‧‧‧執行模組
132‧‧‧啟動模組
134‧‧‧掃描模組
136‧‧‧調用模組
此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用於解釋本發明,並不構成對本發明的不當限定。在附圖中:
圖1是根據本發明實施例的一種用於實現任務處理方法的電腦終端(或移動設備)的硬體結構方塊圖;
圖2是根據本發明實施例的一種任務處理方法的流程圖;
圖3a是根據本發明實施例的一種可選的狀態機的狀態轉換示意圖;
圖3b是根據本發明實施例的另一種可選的狀態機的狀態轉換示意圖;
圖4是根據本發明實施例的一種可選的任務處理方法的流程圖;
圖5是根據本發明實施例的一種可選的任務處理方法的流程圖;
圖6是根據本發明實施例的一種可選的任務處理方法的交互示意圖;
圖7是根據本發明實施例的另一種任務處理方法的流程圖;
圖8是根據本發明實施例的另一種可選的任務處理方法的流程圖;
圖9是根據本發明實施例的另一種可選的任務處理方法的流程圖;
圖10是根據本發明實施例的又一種任務處理方法的流程圖;
圖11是根據本發明實施例的一種任務處理裝置的結構示意圖;
圖12是根據本發明實施例的一種任務處理裝置的結構示意圖;以及
圖13是根據本發明實施例的一種任務處理裝置的結構示意圖。

Claims (32)

  1. 一種任務處理方法,其特徵在於,包括: 獲取目標任務,該目標任務為需部署至目標設備的任務; 根據該目標任務,產生對應的確認信號,該確認信號包含該目標任務的任務內容; 在接收到目標設備的心跳請求的情況下,將該確認信號發送至該目標設備,其中,由該目標設備根據該任務內容執行該目標任務。
  2. 根據請求項1所述的方法,其中,所述獲取目標任務之後,該方法還包括: 產生該目標任務對應的雙狀態記錄,該雙狀態記錄包括期望狀態及實際狀態,該期望狀態用於指示預測執行該目標任務的狀態,該實際狀態用於指示實際執行該目標任務的狀態; 其中,所述將該確認信號發送至該目標設備之後,該方法還包括: 接收該目標設備發送的任務同步請求; 根據該任務同步請求中指示的該目標任務的執行狀態,更新該雙狀態記錄中的該實際狀態。
  3. 根據請求項2所述的方法,其中,所述產生該目標任務對應的雙狀態記錄之後,該方法還包括: 透過掃描該雙狀態記錄,判斷該目標任務是否異常。
  4. 根據請求項3所述的方法,其中,所述透過掃描該雙狀態記錄,判斷該目標任務是否異常包括: 檢測該期望狀態與該實際狀態是否相同;若在預設時間段內該期望狀態與該實際狀態均不相同,觸發異常處理機制;或者, 檢測該實際狀態是否指示狀態異常;若該實際狀態指示狀態異常,觸發異常處理機制。
  5. 根據請求項1所述的方法,其中,所述獲取目標任務包括: 接收控制台發送的第一任務,該第一任務包括調度策略、部署地址及任務內容; 對該部署地址進行解析,檢測該部署地址所指示的該目標設備的狀態; 若該目標設備為正常狀態,根據該任務內容及該調度策略,產生該目標任務。
  6. 根據請求項1所述的方法,其中,所述獲取目標任務之前,該方法還包括: 接收該目標設備發送的設備資訊; 儲存該設備資訊,並產生該目標設備對應的運行環境標識; 將該運行環境標識發送至該目標設備。
  7. 根據請求項6所述的方法,其中,所述根據該目標任務,產生對應的確認信號包括: 獲取該設備資訊; 根據該目標任務及該設備資訊,產生該確認信號,該確認信號還包括以下至少之一:任務快照、回覆碼、消費狀態。
  8. 根據請求項6所述的方法,其中,所述將該運行環境標識發送至該目標設備之後,該方法還包括: 透過監測該目標設備發送的心跳請求,判斷該目標設備是否異常。
  9. 根據請求項8所述的方法,其中,所述透過監測該目標設備發送的心跳請求,判斷該目標設備是否異常包括: 在超過預設時長未接收到該心跳請求的情況下,確定該目標設備失去連接; 從預設的對應關係表中,獲取該目標設備當前運行的任務; 將當前運行的任務的描述資訊儲存至確認信號中; 在接收到該目標設備發送的該心跳請求的情況下,將儲存有該描述資訊的確認信號發送至該目標設備。
  10. 根據請求項1所述的方法,其中,該確認信號包括回覆內容欄位,其中,所述根據該目標任務,產生對應的確認信號包括: 將該任務內容添加至該確認信號的回覆內容欄位中,得到該確認信號。
  11. 根據請求項1所述的方法,其中,所述將該確認信號發送至該目標設備包括: 將該確認信號添加至心跳回覆的資料欄位中; 將添加有該確認信號的該心跳回覆發送至該目標設備。
  12. 根據請求項1所述的方法,其中,還包括: 接收該目標設備發送的任務狀態校準請求,其中,當該目標設備重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含該所有任務的任務狀態的該任務狀態校準請求; 根據該任務狀態校準請求進行狀態校準。
  13. 根據請求項6所述的方法,其中,該設備資訊包括以下至少之一:CPU、記憶體大小、磁碟大小、網路連結、SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊。
  14. 根據請求項1至13中任一項所述的方法,其中,該心跳請求包括以下至少之一:CPU使用率、記憶體使用率、磁碟使用率、所有任務執行的狀態。
  15. 一種任務處理方法,其特徵在於,包括: 將心跳請求發送至調度設備; 接收該調度設備發送的與該心跳請求對應的確認信號,該確認信號包含目標任務的任務內容,該確認信號為該調度設備獲取到該目標任務後產生的; 根據該任務內容執行該目標任務。
  16. 根據請求項15所述的方法,其中,所述根據該任務內容執行該目標任務之後,該方法還包括: 將任務同步請求發送至該調度設備,該任務同步請求用於指示該目標任務的執行狀態,以便該調度設備根據該任務同步請求中指示的該目標任務的執行狀態,更新該目標任務對應的雙狀態記錄中的實際狀態; 其中,該雙狀態記錄包括期望狀態及實際狀態,該期望狀態用於指示預測執行該目標任務的狀態,該實際狀態用於指示實際執行該目標任務的狀態。
  17. 根據請求項15所述的方法,其中,所述將心跳請求發送至調度設備之前,該方法還包括: 採集設備資訊; 將該設備資訊發送至該調度設備,以便該調度設備儲存該設備資訊,並產生對應的運行環境標識; 接收該調度設備發送的運行環境標識。
  18. 根據請求項17所述的方法,其中,所述接收該調度設備發送的運行環境標識之後,該方法還包括: 按照預先配置的頻率,向該調度設備發送心跳請求,該心跳請求包含以下至少之一:CPU使用率、記憶體使用率、磁碟使用率。
  19. 根據請求項18所述的方法,其中, 當重啟、斷網或異常恢復後,採集所有任務的任務狀態,產生包含該所有任務的任務狀態的任務狀態校準請求; 將該任務狀態校準請求發送至該調度設備,以便該調度設備根據該任務狀態校準請求進行狀態校準。
  20. 根據請求項15所述的方法,其中,該確認信號包括回覆內容欄位,其中,該確認信號為該調度設備獲取到該目標任務後產生的包括:該調度設備將該任務內容添加至該確認信號的回覆內容欄位中,得到該確認信號。
  21. 根據請求項15所述的方法,其中,所述接收該調度設備發送的與該心跳請求對應的確認信號包括: 接收該調度設備發送的與該心跳請求對應的心跳回覆,其中,該心跳回覆的資料欄位中攜帶有該確認信號。
  22. 根據請求項17至19中任一項所述的方法,其中,該設備資訊包括以下至少之一:CPU、記憶體大小、磁碟大小、網路連結、SDK版本號、執行引擎資訊、地址資訊、同步間隔時間、配置資訊。
  23. 一種任務處理方法,其特徵在於,包括: 啟動掃描執行緒; 在所述掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量; 若該數量大於或等於預設閾值,調用異常處理函數對該待掃描對象進行處理。
  24. 根據請求項23所述的方法,其中,該待掃描對象包括目標設備、目標任務。
  25. 根據請求項24所述的方法,其中,在該待掃描對象包括該目標設備的情況下,所述調用異常處理函數對該待掃描對象進行處理包括: 從預設的對應關係表中,獲取該目標設備當前運行的任務; 將當前運行的任務的描述資訊儲存至確認信號中; 在接收到該目標設備發送的心跳請求的情況下,將儲存有該描述資訊的確認信號發送至該目標設備。
  26. 根據請求項24所述的方法,其中,在該待掃描對象包括該目標任務的情況下,所述調用異常處理函數對該待掃描對象進行處理包括: 將該目標任務對應的雙狀態記錄中的實際狀態設置為異常狀態,其中,該雙狀態記錄包括期望狀態及實際狀態,該期望狀態用於指示預測執行該目標任務的狀態,該實際狀態用於指示實際執行該目標任務的狀態。
  27. 一種任務處理裝置,其特徵在於,包括: 獲取模組,用於獲取目標任務,該目標任務為需部署至目標設備的任務; 產生模組,用於根據該目標任務,產生對應的確認信號,該確認信號包含該目標任務的任務內容; 通訊模組,用於在接收到目標設備的心跳請求的情況下,將該確認信號發送至該目標設備,其中,由該目標設備根據該任務內容執行該目標任務。
  28. 一種任務處理裝置,其特徵在於,包括: 發送模組,用於將心跳請求發送至調度設備; 接收模組,用於接收該調度設備發送的與該心跳請求對應的確認信號,該確認信號包含目標任務的任務內容,該確認信號為該調度設備獲取到該目標任務後產生的; 執行模組,用於根據該任務內容執行該目標任務。
  29. 一種任務處理裝置,其特徵在於,包括: 啟動模組,用於啟動掃描執行緒; 掃描模組,用於在該掃描執行緒中,調用掃描邏輯函數,對待掃描對象進行掃描,獲取異常的待掃描對象的數量; 調用模組,用於若該數量大於或等於預設閾值,調用異常處理函數對該待掃描對象進行處理。
  30. 一種任務處理系統,其特徵在於,包括如請求項27至29中任一項所述的任務處理裝置。
  31. 一種儲存媒體,其特徵在於,該儲存媒體包括儲存的程式,其中,在該程式運行時控制該儲存媒體所在設備執行以下功能:獲取目標任務,該目標任務為需部署至目標設備的任務;根據該目標任務,產生對應的確認信號,該確認信號包含該目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將該確認信號發送至該目標設備,其中,由該目標設備根據該任務內容執行該目標任務。
  32. 一種處理器,其特徵在於,該處理器用於運行程式,其中,該程式運行時執行以下功能:獲取目標任務,該目標任務為需部署至目標設備的任務;根據該目標任務,產生對應的確認信號,該確認信號包含該目標任務的任務內容;在接收到目標設備的心跳請求的情況下,將該確認信號發送至該目標設備,其中,由該目標設備根據該任務內容執行該目標任務。
TW108107430A 2018-04-18 2019-03-06 任務處理方法、裝置及系統 TW201944236A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810348626.XA CN110389815B (zh) 2018-04-18 2018-04-18 任务处理方法、装置及系统
??201810348626.X 2018-04-18

Publications (1)

Publication Number Publication Date
TW201944236A true TW201944236A (zh) 2019-11-16

Family

ID=68236932

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108107430A TW201944236A (zh) 2018-04-18 2019-03-06 任務處理方法、裝置及系統

Country Status (7)

Country Link
US (1) US20190324797A1 (zh)
EP (1) EP3782098A4 (zh)
JP (1) JP7362650B2 (zh)
CN (1) CN110389815B (zh)
SG (1) SG11202010000VA (zh)
TW (1) TW201944236A (zh)
WO (1) WO2019204572A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200014591A1 (en) * 2018-07-06 2020-01-09 Hitachi, Ltd. Method and system of device deployment integrating with automatic configuration and asset management
US10834017B2 (en) * 2018-11-11 2020-11-10 International Business Machines Corporation Cloud-driven hybrid data flow and collection
CN112749034B (zh) * 2019-10-31 2024-05-17 北京沃东天骏信息技术有限公司 一种数据异常处理方法、装置、存储介质及电子设备
CN111245909B (zh) * 2019-12-31 2023-04-07 深圳云天励飞技术有限公司 分布式动态调度方法、装置、电子设备及存储介质
CN111209103A (zh) * 2020-01-20 2020-05-29 浙江工商大学 一种进程任务调度方法、装置及设备
CN112084039A (zh) * 2020-09-27 2020-12-15 中国建设银行股份有限公司 资源管理系统、方法和装置
CN112231177A (zh) * 2020-10-19 2021-01-15 北京金山云网络技术有限公司 任务执行方法、装置和电子设备
CN112566233A (zh) * 2020-11-16 2021-03-26 漳州立达信光电子科技有限公司 一种基于ZigBee网关的设备状态同步方法及装置
CN112487415B (zh) * 2020-12-09 2023-10-03 华控清交信息科技(北京)有限公司 计算任务的安全性检测方法及装置
CN114745291A (zh) * 2020-12-23 2022-07-12 北京国双科技有限公司 一种异常数据上云方法、装置、电子设备及存储介质
CN113688398B (zh) * 2021-08-24 2024-04-26 杭州迪普科技股份有限公司 漏洞扫描结果的评估方法、装置及系统
CN113806195B (zh) * 2021-09-17 2023-11-10 亿咖通(湖北)技术有限公司 数据处理方法、装置、设备、系统及存储介质
CN114039852A (zh) * 2021-10-26 2022-02-11 深圳毅芯半导体有限公司 一种设备定时执行计划的方法、系统及装置
CN113918305B (zh) * 2021-10-29 2024-06-25 平安银行股份有限公司 节点调度方法、装置、电子设备及可读存储介质
CN114265343B (zh) * 2021-11-19 2023-09-15 青岛海尔科技有限公司 目标设备处理方法、装置、设备、存储介质及产品
CN114390072B (zh) * 2021-12-17 2023-09-29 武汉慧联无限科技有限公司 一种信息处理方法、装置及存储介质
CN114666332A (zh) * 2022-03-29 2022-06-24 北京奕斯伟计算技术有限公司 数据传输方法、边缘盒子、边缘云及数据传输系统
CN114827197B (zh) * 2022-03-31 2023-09-12 远景智能国际私人投资有限公司 基于物联网的服务通信方法、装置、设备及介质
CN114896033A (zh) * 2022-04-01 2022-08-12 上海闪马智能科技有限公司 一种数据处理方法、装置、存储介质及电子装置
CN115242798B (zh) * 2022-06-30 2023-09-26 阿里巴巴(中国)有限公司 一种基于边缘云的任务调度方法、电子设备及存储介质
CN115208922B (zh) * 2022-07-15 2023-11-03 鹿马智能科技(上海)有限公司 基于边缘计算的酒店管理系统
CN115002013B (zh) * 2022-08-08 2022-12-06 浙江华创视讯科技有限公司 运行状态的确定方法、装置、存储介质及电子装置
CN115733737B (zh) * 2023-01-10 2023-04-28 苏州浪潮智能科技有限公司 一种管理ip漂移方法和存储机框
CN116360955A (zh) * 2023-05-31 2023-06-30 天翼云科技有限公司 一种异步任务处理方法及系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4377744B2 (ja) * 2004-05-13 2009-12-02 本田技研工業株式会社 ロボット制御装置
US7823132B2 (en) * 2004-09-29 2010-10-26 Microsoft Corporation Automated test case verification that is loosely coupled with respect to automated test case execution
WO2008126325A1 (ja) 2007-03-30 2008-10-23 Fujitsu Limited クラスタシステム、ソフトウェア更新方法、サービス提供ノード、およびサービス提供用プログラム
JP5223707B2 (ja) 2009-02-05 2013-06-26 富士通株式会社 ソフトウェア更新指示プログラム、ソフトウェア更新指示方法、および情報処理装置
CN101635728B (zh) * 2009-09-02 2012-09-26 中兴通讯股份有限公司 内容分发网络中数据同步的方法及系统
JP2013097548A (ja) 2011-10-31 2013-05-20 Pfu Ltd 情報処理システム、情報処理装置、クライアント端末、情報処理方法、及びプログラム
CN103092698B (zh) * 2012-12-24 2017-06-13 中国科学院深圳先进技术研究院 云计算应用自动部署系统及方法
US9183016B2 (en) * 2013-02-27 2015-11-10 Vmware, Inc. Adaptive task scheduling of Hadoop in a virtualized environment
US20140280805A1 (en) * 2013-03-14 2014-09-18 Rackspace Us, Inc. Two-Sided Declarative Configuration for Cloud Deployment
CN104111806B (zh) * 2013-04-16 2017-07-21 北大方正集团有限公司 一种打印调度、处理方法、装置和系统
IN2013MU02095A (zh) * 2013-06-20 2015-06-05 Tata Consultancy Services Ltd
CN103810023B (zh) * 2014-03-06 2016-09-07 中国科学院信息工程研究所 一种云平台中分布式应用的智能部署方法及系统
CN106406925A (zh) 2015-08-03 2017-02-15 阿里巴巴集团控股有限公司 用于支持在线升级的设备和方法
US10142174B2 (en) * 2015-08-25 2018-11-27 Oracle International Corporation Service deployment infrastructure request provisioning
US10091283B2 (en) * 2016-03-03 2018-10-02 Flipboard, Inc. Distributed scheduling systems for digital magazine
US10572306B2 (en) 2016-09-14 2020-02-25 Cloudera, Inc. Utilization-aware resource scheduling in a distributed computing cluster
CN107465548A (zh) * 2017-08-17 2017-12-12 北京云纵信息技术有限公司 代码的部署方法和装置

Also Published As

Publication number Publication date
CN110389815B (zh) 2023-09-12
JP7362650B2 (ja) 2023-10-17
EP3782098A4 (en) 2022-09-14
CN110389815A (zh) 2019-10-29
SG11202010000VA (en) 2020-11-27
JP2021521528A (ja) 2021-08-26
EP3782098A1 (en) 2021-02-24
WO2019204572A1 (en) 2019-10-24
US20190324797A1 (en) 2019-10-24

Similar Documents

Publication Publication Date Title
TW201944236A (zh) 任務處理方法、裝置及系統
US10693813B1 (en) Enabling and disabling links of a networking switch responsive to compute node fitness
CN107919994B (zh) 实现网络服务双机热备的方法及服务器
CN109344014B (zh) 一种主备切换方法、装置及通信设备
US11218541B2 (en) Data storage method, storage server, and storage medium and system
EP1697843B1 (en) System and method for managing protocol network failures in a cluster system
CN110830283B (zh) 故障检测方法、装置、设备和系统
WO2018095414A1 (zh) 虚拟机故障的检测和恢复方法及装置
US10318392B2 (en) Management system for virtual machine failure detection and recovery
WO2017206678A1 (zh) 信息的获取方法及装置
CN109040295A (zh) 异常断线的确定方法及装置、终端及存储介质
EP3499373A1 (en) Method and apparatus for processing process
CN110109772A (zh) 一种cpu的重启方法、通信设备及可读存储介质
WO2024083259A1 (zh) 主备数据库集群及选主方法、计算设备及存储介质
JP6421516B2 (ja) サーバ装置、冗長構成サーバシステム、情報引継プログラム及び情報引継方法
CN111506388B (zh) 容器性能探测方法、容器管理平台及计算机存储介质
CN115766715A (zh) 一种高可用的超融合集群监控方法和系统
KR101207219B1 (ko) 데이터 분산 서비스 네트워크 과부하 방지 방법
CN110830305B (zh) 无线设备接入wifi网络的方法、装置、电子设备及存储介质
CN111885169B (zh) 一种云硬盘服务高可用的实现方法、系统及装置
EP4030691A1 (en) Data processing method, device, and system
CN112714035A (zh) 监控方法及系统
CN112769889B (zh) 服务数据的推送方法、装置、存储介质以及电子装置
US9454668B2 (en) Information processing system, information processing apparatus, terminal apparatus, and control method
CN116820686B (zh) 物理机的部署方法、虚拟机和容器统一监控的方法及装置