TWI724531B - Equipment and method for assigning services - Google Patents
Equipment and method for assigning services Download PDFInfo
- Publication number
- TWI724531B TWI724531B TW108132068A TW108132068A TWI724531B TW I724531 B TWI724531 B TW I724531B TW 108132068 A TW108132068 A TW 108132068A TW 108132068 A TW108132068 A TW 108132068A TW I724531 B TWI724531 B TW I724531B
- Authority
- TW
- Taiwan
- Prior art keywords
- service
- unsuitability
- existing
- existing service
- complexity
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
本發明的實施例是關於一種服務調派設備及服務調派方法。更具體而言,本發明的實施例是關於一種基於工作節點對服務的不適合度來進行服務調派的服務調配設備及服務調派方法。 The embodiment of the present invention relates to a service dispatching device and a service dispatching method. More specifically, the embodiment of the present invention relates to a service deployment device and a service deployment method for performing service deployment based on the unsuitability of a work node for a service.
傳統的服務調派(service assignment)方法大多為依據工作節點(例如:計算機、手機、平板電腦等設備)的運算能力來對一應用程式中的一服務進行調派,但這樣的服務調派方法在某些情況下並不適合。舉例而言,傳統的服務調派方法傾向於將高耗時的服務調派給高運算能力的工作節點,但高耗時服務不見得需要被儘早完成(亦即,完成高耗時服務的時間低於系統預期完成該服務的時間),故在此情況下,由高運算能力的工作節點來處理高耗時服務是不適合的。同樣地,傳統的服務調派方法傾向於將中等耗時服務調派給中等運算能力的工作節點,但在中等耗時服務需要被儘早完成的情況下,由中等運算能力的工作節點處理中等耗時服務是不適合的。有鑑於此,在本發明所屬技術領域中提供一種能夠根據服務與工作節點之間的關聯性來調派服務的服務調派方法將是重要的。 Traditional service assignment methods are mostly based on the computing power of work nodes (for example, computers, mobile phones, tablets, etc.) to assign a service in an application. However, such service assignment methods are in some cases. The situation is not suitable. For example, traditional service dispatch methods tend to dispatch time-consuming services to high-computing work nodes, but high-time-consuming services do not necessarily need to be completed as soon as possible (that is, the time to complete high-time-consuming services is less than The system is expected to complete the service time), so in this case, it is not suitable for the high computing power work node to process the time-consuming service. Similarly, the traditional service dispatching method tends to dispatch moderately time-consuming services to work nodes with medium computing power. However, in the case that the medium-time-consuming services need to be completed as soon as possible, the medium-time-consuming work nodes will handle the medium time-consuming services. Is not suitable. In view of this, it will be important in the technical field of the present invention to provide a service dispatch method capable of dispatching services based on the correlation between the service and the working node.
為了至少解決上述的問題,本發明的實施例提供了一種服務 調派設備。該服務調派設備可包含一儲存器以及與該儲存器電性連接的一處理器。該儲存器可用以儲存一不適合度表,且該不適合度表針對複數個工作節點之每一者記錄分別對應到複數個預設服務複雜度之複數個預設不適合度。該處理器可用以計算一現有服務之一現有服務複雜度,並且根據該現有服務複雜度以及該不適合度表,計算各該工作節點相對於該現有服務之一估測不適合度。該處理器還可用以根據該複數個估測不適合度計算各該工作節點之一調派機率,並且基於該複數個調派機率,自該複數個工作節點中選擇一目標工作節點以將該現有服務調派給該目標工作節點。 In order to at least solve the above-mentioned problems, the embodiment of the present invention provides a service Dispatch equipment. The service dispatching device may include a storage and a processor electrically connected to the storage. The storage can be used to store an unsuitability table, and the unsuitability table records a plurality of preset unsuitability degrees corresponding to a plurality of preset service complexity for each of the plurality of working nodes. The processor may be used to calculate the complexity of an existing service of an existing service, and calculate the estimated unsuitability of each working node relative to one of the existing services according to the complexity of the existing service and the unsuitability table. The processor may also be used to calculate the dispatch probability of one of the worker nodes based on the plurality of estimated unsuitability degrees, and based on the plurality of dispatch probabilities, select a target worker node from the plurality of worker nodes to dispatch the existing service Give the target work node.
為了至少解決上述的問題,本發明的實施例還提供了一種由一服務調派設備進行的服務調派方法。該服務調派設備可儲存一不適合度表,且該不適合度表針對複數個工作節點之每一者記錄分別對應到複數個預設服務複雜度之複數個預設不適合度。該服務調派方法可包含以下步驟:計算一現有服務之一現有服務複雜度;根據該現有服務複雜度以及該不適合度表,計算各該工作節點相對於該現有服務之一估測不適合度;根據該複數個估測不適合度計算各該工作節點之一調派機率;以及基於該複數個調派機率,自該複數個工作節點中選擇一目標工作節點,並將該現有服務調派給該目標工作節點。 In order to at least solve the above-mentioned problems, the embodiment of the present invention also provides a service dispatching method performed by a service dispatching device. The service dispatching device can store an incompatibility table, and the incompatibility table records a plurality of preset incompatibility corresponding to a plurality of preset service complexity for each of the plurality of working nodes. The service dispatch method may include the following steps: calculating the existing service complexity of an existing service; according to the existing service complexity and the unsuitability table, calculating the estimated unsuitability of each working node relative to one of the existing services; The plurality of estimated unsuitability degrees calculates the dispatch probability of one of the working nodes; and based on the plurality of dispatch probabilities, a target working node is selected from the plurality of working nodes, and the existing service is dispatched to the target working node.
不同於傳統的服務調派方法僅以工作節點本身的運算能力做為服務調派的依據,本發明的實施例中的服務調派設備會根據服務與工作節點之間的不適合度來調派服務,故能有效地改善傳統的服務調派方法的不足。藉此,至少可以實現系統效能最佳化以及應用程式完成時程可控制 的效果。 Unlike the traditional service dispatching method that only uses the computing power of the working node itself as the basis for service dispatching, the service dispatching device in the embodiment of the present invention dispatches services according to the incompatibility between the service and the working node, so it can be effective To improve the shortcomings of traditional service dispatching methods. In this way, at least the system performance can be optimized and the application completion schedule can be controlled Effect.
發明內容整體地敘述了本發明的核心概念,並涵蓋了本發明可解決的問題、可採用的手段以及可達到的功效,以提供本發明所屬技術領域中具有通常知識者對本發明的基本理解。然而,應理解,發明內容並非有意概括本發明的所有實施例,而僅是以一簡單形式來呈現本發明的核心概念,以作為隨後詳細描述的一個引言。 The content of the invention describes the core concept of the invention as a whole, and covers the problems that can be solved by the invention, the methods that can be adopted, and the achievable effects, so as to provide a basic understanding of the invention by those with ordinary knowledge in the technical field of the invention. However, it should be understood that the content of the invention is not intended to summarize all embodiments of the invention, but merely presents the core concept of the invention in a simple form as an introduction to the detailed description that follows.
如下所示: As follows:
1‧‧‧服務調派設備 1‧‧‧Service dispatch equipment
11‧‧‧儲存器 11‧‧‧Storage
111‧‧‧不適合度表 111‧‧‧Unsuitability Table
12‧‧‧處理器 12‧‧‧Processor
13‧‧‧現有服務 13‧‧‧Existing Services
2‧‧‧服務調派方法 2‧‧‧Service dispatch method
201、202、203、204‧‧‧步驟
N1、N2、N3‧‧‧工作節點 N1, N2, N3‧‧‧Working node
S1‧‧‧服務調派系統 S1‧‧‧Service dispatch system
TN‧‧‧目標工作節點 TN‧‧‧Target working node
第1圖例示了在本發明的一或多個實施例中,一種服務調派系統的示意圖。 Figure 1 illustrates a schematic diagram of a service dispatch system in one or more embodiments of the present invention.
第2圖例示了在本發明的一或多個實施例中,一種由一服務調派設備進行的服務調派方法的示意圖。 Figure 2 illustrates a schematic diagram of a service dispatching method performed by a service dispatching device in one or more embodiments of the present invention.
以下所述各種實施例並非用以限制本發明只能在所述的環境、應用、結構、流程或步驟方能實施。於圖式中,與本發明非直接相關的元件皆已省略。於圖式中,各元件的尺寸以及各元件之間的比例僅是範例,而非用以限制本發明。除了特別說明之外,在以下內容中,相同(或相近)的元件符號可對應至相同(或相近)的元件。 The various embodiments described below are not intended to limit that the present invention can only be implemented in the described environment, application, structure, process, or step. In the drawings, components not directly related to the present invention have been omitted. In the drawings, the size of each element and the ratio between each element are only examples, and are not intended to limit the present invention. Except for special instructions, in the following content, the same (or similar) component symbols may correspond to the same (or similar) components.
第1圖例示了在本發明的一或多個實施例中,一種服務調派系統的示意圖。第1圖所示內容僅是為了說明本發明的實施例,而非為了限制本發明。 Figure 1 illustrates a schematic diagram of a service dispatch system in one or more embodiments of the present invention. The content shown in Fig. 1 is only to illustrate the embodiments of the present invention, not to limit the present invention.
參照第1圖,在一服務調派系統S1中,一服務調派設備1可包含一儲存器11以及與儲存器11電性連接的一處理器12。儲存器11與處理器12
之間的電性連接可以是直接的(即沒有透過其他元件而彼此連接)或是間接的(即透過其他元件而彼此連接)。服務調派設備1可經由一有線網路或一無線網路與複數個工作節點連接,或者,服務調派設備1可經由一連接線體直接與該複數個工作節點連接。該複數個工作節點各自可以是具有運算能力的物理裝置,例如但不限於:行動電話、平板電腦、筆記型電腦、物聯網裝置等。於某些實施例中,該複數個工作節點的全部或一部分也可以是部署在物理裝置上的虛擬機器。
Referring to FIG. 1, in a service dispatching system S1, a
為了便於說明,以第1圖為例,服務調派設備1與工作節點N1、工作節點N2以及工作節點N3連接。另外,服務調派設備1可從工作節點N1、工作節點N2以及工作節點N3中選擇其中之一為一目標工作節點TN,並將某一應用所包含的一現有服務13調派至目標工作節點TN。該應用一般是指在服務調派系統S1中為了達到特定目的機能而運行的一應用程式。舉例而言,該應用可以是一影像物件辨識程式、或一存貨動態預測程式等等。現有服務13一般是指為了實現該應用,從該應用分割出來的一個任務。以影像物件辨識這個應用為例,現有服務13可以是一辨識推論運算任務、或一辨識模型下載任務等等。
For ease of description, taking Figure 1 as an example, the
處理器12可以是具備訊號處理功能的微處理器(microprocessor)或微控制器(microcontroller)等。微處理器或微控制器是一種可程式化的特殊積體電路,其具有運算、儲存、輸出/輸入等能力,且可接受並處理各種編碼指令,藉以進行各種邏輯運算與算術運算,並輸出相應的運算結果。處理器12可被編程以解釋各種指令,以處理服務調派設備1中的資料並執行各項運算程序或程式。
The
儲存器11可用以儲存服務調派設備1所產生的資料、外部裝置傳入的資料、或使用者自行輸入的資料。儲存器11可包含第一級記憶體(又稱主記憶體或內部記憶體),且處理器112可直接讀取儲存在第一級記憶體內的指令集,並在需要時執行這些指令集。儲存器11可選擇性地包含第二級記憶體(又稱外部記憶體或輔助記憶體),且此記憶體可透過資料緩衝器將儲存的資料傳送至第一級記憶體。舉例而言,第二級記憶體可以是但不限於:硬碟、光碟等。儲存器11可選擇性地包含第三級記憶體,亦即,可直接插入或自電腦拔除的儲存裝置,例如隨身硬碟。
The
儲存器11可用以儲存一不適合度表111。不適合度表111可針對工作節點N1、工作節點N2以及工作節點N3之每一者記錄其分別對應到複數個預設服務複雜度之複數個預設不適合度。對於每一個工作節點而言,不適合度表111所記錄的該複數個預設不適合度可反映出其分別執行具有該複數個預設服務複雜度的服務的不適合程度。預設不適合度愈小表示該工作節點愈適合執行具有與該預設不適合度相對應的服務複雜度的服務。
The
處理器12可用以初始化不適合度表111。在某些實施例中,處理器12可根據工作節點N1、工作節點N2以及工作節點N分別3預先執行多個預設服務一次或多次的結果來決定不適合度表111中每一個預設不適合度的初始值。每一個預設服務具有不適合度表111中的一個預設服務複雜度。這些預設服務可以來自於一或多個應用。
The
在某些實施例中,可選地,處理器12也可直接決定不適合度表111中的每一個預設不適合度的初始值。舉例而言,可以將不適合度表111中的每一個預設不適合度的初始值皆設定為零。雖然這樣的初始化方式可
能造成第一次服務調派的結果較不盡理想,但因處理器12可動態地基於工作節點N1、工作節點N2以及工作節點N3對各服務的執行結果而更新不適合度表111中的預設不適合度(隨後詳述),故服務調派的結果也會逐漸符合所需。
In some embodiments, optionally, the
在某些實施例中,一服務的服務複雜度,無論是現有服務13的現有服務複雜度、或是不適合度表111中的每一個預設服務複雜度,可以是指該服務的一常態作業成本與該服務的一預期作業成本的一比值。一服務的常態作業成本可以表示為一工作節點完成該服務所需的平均作業時間,而該服務的預期作業成本則可以表示為使用者預期該工作節點完成該服務的理想運算時間。
In some embodiments, the service complexity of a service, whether it is the existing service complexity of the existing
原則上,一種服務類別需要一個不適合度表111來記錄其服務複雜度。舉例而言,若多個服務共包含二個以上的服務類別,例如計算類別與傳輸類別,則需要二個不適合度表111來分別記錄對應到計算類別以及傳輸類別的服務的服務複雜度。然而,若二個以上的服務類別之間存在轉換關係,則可以透過該轉換關係,而僅使用一個不適合度表111來完成服務調派。因此,在某些實施例中,處理器12於計算各服務的服務複雜度時,可透過一複雜度調節參數實現上述轉換。此時,服務複雜度的計算方式可如第1式所示:
舉例而言,假設一影像物件辨識應用包含了一辨識推論運算服務以及一辨識推論模型下載服務,該辨識推論運算服務的常態作業成本與預期作業成本分別是完成一辨識推論運算的平均運算時間(例如:3.5秒)以及理想運算時間(例如:0.7秒),且該辨識推論模型下載服務的常態作業成本與預期作業成本分別是完成一辨識推論模型下載的檔案大小(例如:200MB)以及理想下載時間(例如:2秒),則在計算該辨識推論運算服務以及該辨識推論模型下載服務的服務複雜度時,可以分別將第1式中的Factor設定為1以及0.1,以將該辨識推論運算服務以及該辨識推論模型下載服務的服務複雜度轉為同一個層級。屬於同一個層級的服務將可以被比較,故其服務複雜度可以被記錄在同一個不適合度表111中。
For example, suppose an image object identification application includes an identification inference calculation service and an identification inference model download service. The normal operation cost and the expected operation cost of the identification inference calculation service are the average operation time to complete an identification inference calculation ( For example: 3.5 seconds) and ideal computing time (for example: 0.7 seconds), and the normal operating cost and expected operating cost of the identification inference model download service are the file size (for example: 200MB) and ideal download for completing an identification inference model download. Time (for example: 2 seconds), when calculating the service complexity of the identification inference calculation service and the identification inference model download service, the Factor in
在完成不適合度表111的初始化後,處理器12可針對每一個現有服務13進行調派。首先,處理器12可根據第1式計算現有服務13的一現有服務複雜度。舉例而言,假設現有服務13可以是從一影像物件辨識應用中分割出來的辨識推論運算服務,且其常態作業成本為「10秒」,預期作業成本為「1秒」,複雜度調節參數為「1」,則現有服務13之現有服務複雜度即為「10」。
After the initialization of the unsuitability table 111 is completed, the
在計算完現有服務13的現有服務複雜度之後,處理器12可根據該現有服務複雜度以及不適合度表111而計算工作節點N1、工作節點N2以及工作節點N3之每一者相對於現有服務13之一估測不適合度。舉例而言,
處理器12可根據第2式來分別計算計算工作節點N1、工作節點N2以及工作節點N對於現有服務13的估測不適合度:
根據第2式,若不適合度表111中的預設服務複雜度「s」與該現有服務複雜度「μ」的差異愈小,則該高斯函數「g(s,μ,σ)」的數值愈大。換言之,根據第2式,可增加對應到差異小的預設服務複雜度「s」的預設不適合度「Ti(s)」的權重,且減弱對應到差異大的預設服務複雜度「s」的預設不適合度「Ti(s)」的權重。 According to the second formula, if the difference between the default service complexity "s" in the unsuitability table 111 and the existing service complexity "μ" is smaller, the value of the Gaussian function "g(s,μ,σ)" Bigger. In other words, according to the second formula, the weight of the default unsuitability "T i (s)" corresponding to the default service complexity "s" with small difference can be increased, and the default service complexity corresponding to the big difference "s" can be reduced. The weight of the default unsuitability "T i (s)" of "s".
舉例而言,假設不適合度表111如表一所示,高斯函數「g(s,μ,σ)」的標準差「σ」為「1」,且現有服務13的現有服務複雜度為「10」,則根據第2式,工作節點N1的估測不適合度為「FN1(10)=10×g(5,10,1)+
0×g(10,10,1)+20×g(15,10,1)=0.00001487083+0+0.00002974167=0.00004461251」。同樣地,根據第2式,工作節點N2對於現有服務13的估測不適合度「FN2(10)」為「10.0000297417」,且工作節點N3對於現有服務13的估測不適合度「FN2(10)」為「20.0000148708」。
For example, suppose the unsuitability table 111 is shown in Table 1, the standard deviation "σ" of the Gaussian function "g(s,μ,σ)" is "1", and the existing service complexity of the existing
在針對工作節點N1、N2、N3分別計算出估測不適合度之後,處理器12可根據該複數個估測不適合度計算各該工作節點之一選擇權重。舉例而言,在某些實施例中,處理器12可將該複數個估測不適合度中的最大者與各該估測不適合度的一比值作為各該工作節點對應於該現有服務的一
選擇權重。因此,工作節點N1的選擇權重為「
448305.08014」,工作節點N2的選擇權重為「
1.99999553875」,而工作節點N3的選擇權重則為「」。
After calculating the estimated unsuitability for the working nodes N1, N2, and N3, the
處理器12可進一步將工作節點N1、工作節點N2以及工作節點N3的選擇權重進行標準化,以分別計算出工作節點N1、N2、N3的調派機
率。此時,工作節點N1的調派機率為「
0.9999933」、工作節點N2的調派機率為「
0.0000043」,而工作節點N3的調派機率則為「
0.0000022」。處理器12可根據工作節點N1、N2、N3的調派機率而從中選擇一目標工作節點。在此例中,處理器12可選擇調派機率最高的工作節點N1做為目標工作節點TN,以將現有服務13調派給工作節點N1處理。
The
在某些實施例中,處理器12可動態地更新不適合度表111中的預設不適合度。舉例而言,在工作節點N1(即,目標工作節點TN)完成現有服務13之後,處理器12可根據下方第3式計算工作節點N1對於現有服務13的一估測效能,並且根據該估測效能與不適合度表111中的複數個預設服務複雜度之間的差距絕對值,在不適合度表111中分別更新與工作節點N1有關的預設不適合度。
In some embodiments, the
於第3式中,估測效能與不適合度表111中的各預設服務複雜
度的差距絕對值|Ri(μ)-S|本質上可被視為與各預設服務複雜度相對應的理想不適合度。另外,根據第3式,處理器12可透過高斯函數「g(S,μ,σ)」的標準差「σ」來決定不適合度表111中原預設不適合度集合被調整的幅度。考量到在部分系統(例如:物聯網系統)中工作節點的運算能力可能起伏不定,故處理器12可透過該高斯函數限制不適合度表111中的各預設不適合度被調整的幅度,以免幅度的調整受到工作節點的運算能力變化的不利影響。
In the third formula, the absolute value of the difference between the estimated performance and the complexity of each preset service in the unsuitability table 111 |R i (μ)-S| can essentially be regarded as corresponding to the complexity of each preset service The ideal unsuitability. In addition, according to the third formula, the
在某些實施例中,第i個工作節點對於現有服務複雜度「μ」的現有服務13的估測效能「Ri(μ)」可以第4式來表示:
於第4式中,系統負載參數「L」可用以反映服務調派系統S1中的負載情形,亦即系統負載參數「L」與服務調派系統S1的負載情形呈正相關。舉例而言,在某些實施例中,系統負載參數「L」可以是服務調派系統S1中的工作節點的數量。 In formula 4, the system load parameter "L" can be used to reflect the load situation in the service dispatch system S1, that is, the system load parameter "L" is positively correlated with the load situation in the service dispatch system S1. For example, in some embodiments, the system load parameter “L” may be the number of working nodes in the service dispatch system S1.
有鑑於平均值「μ」被用以表示現有服務13的現有服務複雜度,故根據第1式和第4式,第i個工作節點對於現有服務複雜度「μ」的現有服務13的估測效能「Ri(μ)」也可以第5式來表示:
在某些實施例中,效能調節參數「θ」可以第6式來表示:
根據第6式,效能調節參數「θ」為介於零到一之間的一實數,且在現有服務13的實際作業成本小於預期作業成本時,該效能調節參數「θ」的值小於一。綜合第5式與第6式可得知,當該效能調節參數「θ」的值等於一,則估測效能「Ri(μ)」表示第i個工作節點對於現有服務複雜度「μ」的現
有服務13的實際效能(即「」)不被調整,而當該效能調節參數「θ」
的值小於一,則估測效能「Ri(μ)」表示第i個工作節點對於現有服務複雜度「μ」的現有服務13的實際效能將被調低。除此之外,根據第6式,當系統負載參數「L」愈小,該效能調節參數「θ」的影響將愈顯著。因此,綜合第5式與第6式還可得知,當系統負載量較低(即,該系統負載參數「L」較小)且當目標工作節點TN為一高效能工作節點(即,現有服務13的實際作業成本小於預期作業成本)時,該效能調節參數「θ」可降低目標工作節點TN對於現有服務13的估測效能「Ri(μ)」,以提高服務複雜度較低的服務被調派至高效能工作節點(即,目標工作節點TN)的可能性。這是因為在負載量較低的系統中較不常出現高複雜度的服務,故高效能工作節點被分配到服務的頻率則相對較低,而此時透過該效能調節參數「θ」降低高效能工作節點的估測效能「Ri(μ)」,將可提升高效能工作節點的使用頻率。
According to the sixth formula, the performance adjustment parameter "θ" is a real number between zero and one, and when the actual operation cost of the existing
舉例而言,假設現有服務13的預期執行時間(即,該預期作業成本)為「1秒」,工作節點N1(即,目標工作節點TN)對於現有服務13的實際執行時間(即,該實際作業成本)為「0.8秒」,且該系統負載參數「L」為工作節點N1、N2、N3的數量(即,三個),則根據第6式,可得到工作節
點N1的效能調節參數為:「」。隨
後再根據第4式,可得到「」,此亦即工作節點
N1對現有服務13的估測效能。接著,根據第3式,將可得到新預設不適合度集合「(S)」,也就是,「g(5,10,1)=9.999」、「0.997」、以及「」。根據上述計算,不適合度表111中有關工作節點N1的原預設服務複雜度將被更新為如表二所示:
從表二可看出工作節點N1對具有預設服務複雜度為「5」及「15」的預設服務而言,其預設不適合度微幅均下降了約「0.001」,而對於具有預設服務複雜度為「10」的預設服務而言,其預設不適合度則上升了「0.997」。 It can be seen from Table 2 that for the default service with default service complexity of "5" and "15", the default unsuitability of work node N1 is slightly reduced by about "0.001". For the default service with a service complexity of "10", its default unsuitability has increased by "0.997".
第2圖例示了在本發明的一或多個實施例中,一種由一服務調派設備進行的服務調派方法的示意圖。第2圖所示內容僅是為了說明本發明的實施例,而非為了限制本發明。 Figure 2 illustrates a schematic diagram of a service dispatching method performed by a service dispatching device in one or more embodiments of the present invention. The content shown in Figure 2 is only for illustrating the embodiments of the present invention, not for limiting the present invention.
第2圖呈現了一種由一服務調派設備進行的服務調派方法2,該服務調派設備儲存一不適合度表,且該不適合度表針對複數個工作節點之每一者記錄分別對應到複數個預設服務複雜度之複數個預設不適合度。
服務調派方法2可包含以下步驟:計算一現有服務之一現有服務複雜度(標示為201);根據該現有服務複雜度以及該不適合度表,計算各該工作節點相對於該現有服務之一估測不適合度(標示為202);根據該複數個估測不適合度計算各該工作節點之一調派機率(標示為203);以及基於該複數個調派機率,自該複數個工作節點中選擇一目標工作節點,並將該現有服務調派給該目標工作節點(標示為204)。
Figure 2 shows a
在某些實施例中,關於服務調派方法2,各該估測不適合度是相對應的工作節點在該不適合度表中的複數個預設不適合度各自與一高斯函數相乘後相加的總合,該高斯函數的平均值為該現有服務複雜度。
In some embodiments, with regard to
在某些實施例中,關於服務調派方法2,該複數個調派機率是由該服務調派設備透過將該複數個估測不適合度中之最高者與各該估測不適合度之比值進行標準化所計算而得。
In some embodiments, regarding
在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值。
In some embodiments, regarding
在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值。除此之外,服務調派方法2還可包含以下步驟:計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值
和一效能調節參數的一乘積;以及根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。
In some embodiments, regarding
在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值,且服務調派方法2還可包含以下步驟:計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值和一效能調節參數的一乘積;以及根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。除此之外,該效能調節參數可被定義為:
min{max{,0},1}
當中,min{ }表示選擇最小值,max{ }表示選擇最大值,x表示該目標工作節點完成該現有服務的該實際作業成本與該現有服務的該預期作業成本的一比值,且L表示該複數個工作節點之數量。
In some embodiments, regarding
在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值,且服務調派方法2還可包含以下步驟:計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值
和一效能調節參數的一乘積;以及根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。除此之外,該服務調派設備根據各該差距絕對值和相對應的預設不適合度之間的差距和一高斯函數的乘積來更新與該目標工作節點有關的該複數個預設不適合度,該高斯函數的平均值為該現有服務複雜度。
In some embodiments, regarding
在某些實施例中,可由服務調派設備1進行服務調派方法2。由於本發明所屬技術領域中具有通常知識者可根據上文針對服務調派設備1的說明而清楚得知服務調派方法2的其他對應實施例,故相關細節於此不再贅述。
In some embodiments, the
不同於傳統的服務調派方法僅以工作節點本身的運算能力做為服務調派的依據,本發明的實施例中的服務調派設備1和服務調派方法2會根據服務與工作節點之間的不適合度來調派服務,故能有效地改善傳統的服務調派方法的不足。藉此,至少可以實現系統效能最佳化以及應用程式完成時程可控制的效果。除此之外,因服務調派設備1和服務調派方法2可即時地根據工作節點的實際執行狀況及系統的負載狀況而進行不適合度的調整,故具有強健的適應能力。
Unlike the traditional service dispatching method that only uses the computing power of the working node itself as the basis for service dispatching, the
以上所揭露的實施例並非為了限制本發明。針對以上所揭露的實施例的改變或調整,只要是本發明所屬技術領域中具有通常知識者可輕易思及的,也都落於本發明的範圍內。本發明的範圍以申請專利範圍所載內容為準。 The embodiments disclosed above are not intended to limit the present invention. The changes or adjustments to the embodiments disclosed above are within the scope of the present invention as long as they can be easily thought of by a person with ordinary knowledge in the technical field of the present invention. The scope of the present invention is subject to the content contained in the scope of the patent application.
2‧‧‧服務調派方法 2‧‧‧Service dispatch method
201、202、203、204‧‧‧步驟
Claims (14)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108132068A TWI724531B (en) | 2019-09-05 | 2019-09-05 | Equipment and method for assigning services |
CN202010363096.3A CN112445589A (en) | 2019-09-05 | 2020-04-30 | Service dispatching equipment and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108132068A TWI724531B (en) | 2019-09-05 | 2019-09-05 | Equipment and method for assigning services |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202111574A TW202111574A (en) | 2021-03-16 |
TWI724531B true TWI724531B (en) | 2021-04-11 |
Family
ID=74733130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108132068A TWI724531B (en) | 2019-09-05 | 2019-09-05 | Equipment and method for assigning services |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112445589A (en) |
TW (1) | TWI724531B (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729246A (en) * | 2013-12-31 | 2014-04-16 | 浪潮(北京)电子信息产业有限公司 | Method and device for dispatching tasks |
CN106126323A (en) * | 2016-06-17 | 2016-11-16 | 四川新环佳科技发展有限公司 | Real-time task scheduling method based on cloud platform |
US20170329643A1 (en) * | 2014-11-25 | 2017-11-16 | Institute Of Acoustics, Chinese Academy Of Sciences | Distributed node intra-group task scheduling method and system |
TWM557395U (en) * | 2017-11-28 | 2018-03-21 | Momo Com Inc | Distributed task scheduling execution system |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6938256B2 (en) * | 2000-01-18 | 2005-08-30 | Galactic Computing Corporation | System for balance distribution of requests across multiple servers using dynamic metrics |
US7904192B2 (en) * | 2004-01-14 | 2011-03-08 | Agency For Science, Technology And Research | Finite capacity scheduling using job prioritization and machine selection |
JP2012517041A (en) * | 2009-02-05 | 2012-07-26 | 日本電気株式会社 | Method, system and program for admission control / scheduling of time-limited tasks by genetic approach |
CN109643247B (en) * | 2016-07-20 | 2023-07-04 | 世界线公司 | Multi-standard adaptive scheduling for market-oriented hybrid cloud infrastructure |
CN107844879A (en) * | 2017-06-27 | 2018-03-27 | 北京小度信息科技有限公司 | Order allocation method and device |
-
2019
- 2019-09-05 TW TW108132068A patent/TWI724531B/en active
-
2020
- 2020-04-30 CN CN202010363096.3A patent/CN112445589A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729246A (en) * | 2013-12-31 | 2014-04-16 | 浪潮(北京)电子信息产业有限公司 | Method and device for dispatching tasks |
US20170329643A1 (en) * | 2014-11-25 | 2017-11-16 | Institute Of Acoustics, Chinese Academy Of Sciences | Distributed node intra-group task scheduling method and system |
CN106126323A (en) * | 2016-06-17 | 2016-11-16 | 四川新环佳科技发展有限公司 | Real-time task scheduling method based on cloud platform |
TWM557395U (en) * | 2017-11-28 | 2018-03-21 | Momo Com Inc | Distributed task scheduling execution system |
Also Published As
Publication number | Publication date |
---|---|
TW202111574A (en) | 2021-03-16 |
CN112445589A (en) | 2021-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3091537B1 (en) | Noise cancellation for voice activation | |
JP2021517295A (en) | High-efficiency convolutional network for recommender systems | |
WO2020029592A1 (en) | Conversion method, apparatus, computer device, and storage medium | |
WO2018170454A2 (en) | Using different data sources for a predictive model | |
JP2020521263A (en) | Method, system and device for improving convolution efficiency | |
US11521038B2 (en) | Electronic apparatus and control method thereof | |
CN111966361B (en) | Method, device, equipment and storage medium for determining model to be deployed | |
US10509641B2 (en) | Optimizing feature deployment based on usage pattern | |
CN110225104A (en) | Data capture method, device and terminal device | |
CN111355814B (en) | Load balancing method, device and storage medium | |
TW202123003A (en) | Load balancing device and method for an edge computing network | |
US20210373962A1 (en) | System and method of identifying equivalents for task completion | |
US20240112229A1 (en) | Facilitating responding to multiple product or service reviews associated with multiple sources | |
WO2020107264A1 (en) | Neural network architecture search method and apparatus | |
CN112988275B (en) | Task perception-based mobile edge computing multi-user computing unloading method | |
JP2023544475A (en) | Smart home bubble formation | |
TWI724531B (en) | Equipment and method for assigning services | |
EP1963973A1 (en) | Systems and methods for quantitative application measurement | |
KR20230035750A (en) | Methodes, devices and systems for tailored interior design and providing quote information | |
US20130060762A1 (en) | Ranking analysis results based on user perceived problems in a database system | |
TWI822290B (en) | Computer-implemented method, computer system and computer program product related to federated learning for training machine learning models | |
US20230064500A1 (en) | Optimizing machine learning as-a-service performance for cellular communication systems | |
CN115829053B (en) | Model operation strategy determination method and device, electronic equipment and storage medium | |
US20230130502A1 (en) | Entity clustering | |
WO2022037689A1 (en) | Data form-based data processing method and machine learning application method |