TWI724531B - Equipment and method for assigning services - Google Patents

Equipment and method for assigning services Download PDF

Info

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
Application number
TW108132068A
Other languages
Chinese (zh)
Other versions
TW202111574A (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 財團法人資訊工業策進會
Priority to TW108132068A priority Critical patent/TWI724531B/en
Priority to CN202010363096.3A priority patent/CN112445589A/en
Publication of TW202111574A publication Critical patent/TW202111574A/en
Application granted granted Critical
Publication of TWI724531B publication Critical patent/TWI724531B/en

Links

Images

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
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques 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

An equipment and method for assigning services are disclosed. The equipment stores an unfitness table that records a plurality of preset unfitness values respectively corresponding to a plurality of preset service complexity values for each of a plurality of working nodes. The equipment calculates a current service complexity value of a current service, and calculates an estimated unfitness value corresponding to the current service for each of the working nodes according to the current service complexity value and the unfitness table. After that, the equipment calculates an assignment probability for each of the working nodes according to the plurality of estimated unfitness values, and then selects a target working node from the working nodes based on the plurality of assignment probabilities to assign the current service to the target working node.

Description

服務調派設備及方法 Service dispatch equipment and method

本發明的實施例是關於一種服務調派設備及服務調派方法。更具體而言,本發明的實施例是關於一種基於工作節點對服務的不適合度來進行服務調派的服務調配設備及服務調派方法。 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‧‧‧步驟 Steps 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 service dispatching device 1 may include a storage 11 and a processor 12 electrically connected to the storage 11. Storage 11 and processor 12 The electrical connection between them can be direct (that is, not connected to each other through other components) or indirect (that is, connected to each other through other components). The service dispatching device 1 can be connected to a plurality of working nodes via a wired network or a wireless network, or the service dispatching device 1 can be directly connected to the plurality of working nodes via a connecting line. Each of the plurality of working nodes may be physical devices with computing capabilities, such as but not limited to: mobile phones, tablet computers, notebook computers, Internet of Things devices, etc. In some embodiments, all or part of the plurality of working nodes may also be virtual machines deployed on physical devices.

為了便於說明,以第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 service dispatching device 1 is connected to a working node N1, a working node N2, and a working node N3. In addition, the service dispatching device 1 can select one of the working node N1, the working node N2, and the working node N3 as a target working node TN, and dispatch an existing service 13 included in an application to the target working node TN. The application generally refers to an application program that runs in the service dispatch system S1 to achieve a specific purpose function. For example, the application can be an image object recognition program, or an inventory dynamic prediction program, and so on. The existing service 13 generally refers to a task separated from the application in order to implement the application. Taking the application of image object recognition as an example, the existing service 13 may be an identification inference calculation task, or an identification model downloading task, and so on.

處理器12可以是具備訊號處理功能的微處理器(microprocessor)或微控制器(microcontroller)等。微處理器或微控制器是一種可程式化的特殊積體電路,其具有運算、儲存、輸出/輸入等能力,且可接受並處理各種編碼指令,藉以進行各種邏輯運算與算術運算,並輸出相應的運算結果。處理器12可被編程以解釋各種指令,以處理服務調派設備1中的資料並執行各項運算程序或程式。 The processor 12 may be a microprocessor or a microcontroller with a signal processing function. A microprocessor or microcontroller is a special programmable integrated circuit, which has the capabilities of calculation, storage, output/input, etc., and can accept and process various coding instructions, so as to perform various logic operations and arithmetic operations, and output The corresponding calculation result. The processor 12 can be programmed to interpret various instructions to process data in the service dispatching device 1 and execute various calculation procedures or programs.

儲存器11可用以儲存服務調派設備1所產生的資料、外部裝置傳入的資料、或使用者自行輸入的資料。儲存器11可包含第一級記憶體(又稱主記憶體或內部記憶體),且處理器112可直接讀取儲存在第一級記憶體內的指令集,並在需要時執行這些指令集。儲存器11可選擇性地包含第二級記憶體(又稱外部記憶體或輔助記憶體),且此記憶體可透過資料緩衝器將儲存的資料傳送至第一級記憶體。舉例而言,第二級記憶體可以是但不限於:硬碟、光碟等。儲存器11可選擇性地包含第三級記憶體,亦即,可直接插入或自電腦拔除的儲存裝置,例如隨身硬碟。 The storage 11 can be used to store data generated by the service dispatching device 1, data transmitted by an external device, or data input by a user. The storage 11 may include a first-level memory (also called a main memory or an internal memory), and the processor 112 can directly read the instruction set stored in the first-level memory, and execute these instruction sets when needed. The storage 11 may optionally include a second-level memory (also called an external memory or an auxiliary memory), and this memory may transmit stored data to the first-level memory through a data buffer. For example, the secondary memory can be, but is not limited to: hard disks, optical disks, and so on. The storage 11 may optionally include a tertiary memory, that is, a storage device that can be directly inserted into or removed from the computer, such as a portable hard disk.

儲存器11可用以儲存一不適合度表111。不適合度表111可針對工作節點N1、工作節點N2以及工作節點N3之每一者記錄其分別對應到複數個預設服務複雜度之複數個預設不適合度。對於每一個工作節點而言,不適合度表111所記錄的該複數個預設不適合度可反映出其分別執行具有該複數個預設服務複雜度的服務的不適合程度。預設不適合度愈小表示該工作節點愈適合執行具有與該預設不適合度相對應的服務複雜度的服務。 The storage 11 can be used to store an unsuitability table 111. The unsuitability table 111 may record a plurality of preset unsuitability degrees corresponding to a plurality of preset service complexity for each of the work node N1, the work node N2, and the work node N3. For each working node, the plurality of preset unsuitability degrees recorded in the unsuitability table 111 can reflect the degree of unsuitability for respectively executing services with the plurality of preset service complexity. The smaller the preset unsuitability degree indicates that the working node is more suitable for executing the service with the service complexity corresponding to the preset unsuitability degree.

處理器12可用以初始化不適合度表111。在某些實施例中,處理器12可根據工作節點N1、工作節點N2以及工作節點N分別3預先執行多個預設服務一次或多次的結果來決定不適合度表111中每一個預設不適合度的初始值。每一個預設服務具有不適合度表111中的一個預設服務複雜度。這些預設服務可以來自於一或多個應用。 The processor 12 can be used to initialize the unsuitability table 111. In some embodiments, the processor 12 may determine that each of the presets in the unsuitability table 111 is unsuitable according to the results of the work node N1, the work node N2, and the work node N respectively 3 pre-executing multiple preset services one or more times. The initial value of the degree. Each preset service has a preset service complexity in the unsuitability table 111. These preset services can come from one or more applications.

在某些實施例中,可選地,處理器12也可直接決定不適合度表111中的每一個預設不適合度的初始值。舉例而言,可以將不適合度表111中的每一個預設不適合度的初始值皆設定為零。雖然這樣的初始化方式可 能造成第一次服務調派的結果較不盡理想,但因處理器12可動態地基於工作節點N1、工作節點N2以及工作節點N3對各服務的執行結果而更新不適合度表111中的預設不適合度(隨後詳述),故服務調派的結果也會逐漸符合所需。 In some embodiments, optionally, the processor 12 may also directly determine the initial value of each preset unsuitability in the unsuitability table 111. For example, the initial value of each preset unsuitability in the unsuitability table 111 can be set to zero. Although this initialization method can be It can cause the result of the first service dispatch to be less than ideal, but because the processor 12 can dynamically update the preset in the unsuitability table 111 based on the execution results of the working node N1, the working node N2, and the working node N3 for each service Unsuitability (detailed later), so the result of service deployment will gradually meet the needs.

在某些實施例中,一服務的服務複雜度,無論是現有服務13的現有服務複雜度、或是不適合度表111中的每一個預設服務複雜度,可以是指該服務的一常態作業成本與該服務的一預期作業成本的一比值。一服務的常態作業成本可以表示為一工作節點完成該服務所需的平均作業時間,而該服務的預期作業成本則可以表示為使用者預期該工作節點完成該服務的理想運算時間。 In some embodiments, the service complexity of a service, whether it is the existing service complexity of the existing service 13, or each preset service complexity in the unsuitability table 111, may refer to a normal operation of the service The ratio of cost to an expected operating cost of the service. The normal operating cost of a service can be expressed as the average operating time required for a work node to complete the service, and the expected operating cost of the service can be expressed as the ideal computing time for the user to expect the work node to complete the service.

原則上,一種服務類別需要一個不適合度表111來記錄其服務複雜度。舉例而言,若多個服務共包含二個以上的服務類別,例如計算類別與傳輸類別,則需要二個不適合度表111來分別記錄對應到計算類別以及傳輸類別的服務的服務複雜度。然而,若二個以上的服務類別之間存在轉換關係,則可以透過該轉換關係,而僅使用一個不適合度表111來完成服務調派。因此,在某些實施例中,處理器12於計算各服務的服務複雜度時,可透過一複雜度調節參數實現上述轉換。此時,服務複雜度的計算方式可如第1式所示:

Figure 108132068-A0101-12-0006-1
當中:「s」表示某一服務的服務複雜度; 「StdCost」表示該服務的常態作業成本;「PreferCost」表示該服務的預期作業成本;且「Factor」表示複雜度調節參數。 In principle, a service category needs an unsuitability table 111 to record its service complexity. For example, if multiple services include more than two service categories, such as calculation category and transmission category, two unsuitability tables 111 are required to record the service complexity of services corresponding to the calculation category and transmission category, respectively. However, if there is a conversion relationship between two or more service categories, the conversion relationship can be used and only one unsuitability table 111 can be used to complete the service dispatch. Therefore, in some embodiments, when the processor 12 calculates the service complexity of each service, the above conversion can be realized through a complexity adjustment parameter. At this time, the calculation method of service complexity can be as shown in formula 1:
Figure 108132068-A0101-12-0006-1
Among them: "s" represents the service complexity of a service; "StdCost" represents the normal operating cost of the service; "PreferCost" represents the expected operating cost of the service; and "Factor" represents the complexity adjustment parameter.

舉例而言,假設一影像物件辨識應用包含了一辨識推論運算服務以及一辨識推論模型下載服務,該辨識推論運算服務的常態作業成本與預期作業成本分別是完成一辨識推論運算的平均運算時間(例如: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 Formula 1 can be set to 1 and 0.1 respectively to calculate the identification inference The service complexity of the service and the download service of the identification inference model are transferred to the same level. Services belonging to the same level can be compared, so their service complexity can be recorded in the same unsuitability table 111.

在完成不適合度表111的初始化後,處理器12可針對每一個現有服務13進行調派。首先,處理器12可根據第1式計算現有服務13的一現有服務複雜度。舉例而言,假設現有服務13可以是從一影像物件辨識應用中分割出來的辨識推論運算服務,且其常態作業成本為「10秒」,預期作業成本為「1秒」,複雜度調節參數為「1」,則現有服務13之現有服務複雜度即為「10」。 After the initialization of the unsuitability table 111 is completed, the processor 12 may dispatch each existing service 13. First, the processor 12 can calculate an existing service complexity of the existing service 13 according to Formula 1. For example, suppose that the existing service 13 can be an identification inference calculation service segmented from an image object identification application, and its normal operating cost is "10 seconds", the expected operating cost is "1 second", and the complexity adjustment parameter is "1", the existing service complexity of the existing service 13 is "10".

在計算完現有服務13的現有服務複雜度之後,處理器12可根據該現有服務複雜度以及不適合度表111而計算工作節點N1、工作節點N2以及工作節點N3之每一者相對於現有服務13之一估測不適合度。舉例而言, 處理器12可根據第2式來分別計算計算工作節點N1、工作節點N2以及工作節點N對於現有服務13的估測不適合度:

Figure 108132068-A0101-12-0008-2
當中:「i」表示工作節點的序號;「μ」表示現有服務13的現有服務複雜度;「Fi(μ)」表示第i個工作節點對現有服務複雜度「μ」的現有服務13的估測不適合度「s」表示不適合度表111中的預設服務複雜度;「S」表示不適合度表111中的預設服務複雜度集合;「Ti(s)」表示不適合度表111中的第i個工作節點對預設服務複雜度為「s」的服務的預設不適合度;且「g(s,μ,σ)」表示一高斯函數,且其平均值和標準差分別為「μ」和「σ」。 After calculating the existing service complexity of the existing service 13, the processor 12 can calculate each of the working node N1, the working node N2, and the working node N3 relative to the existing service 13 according to the existing service complexity and unsuitability table 111. One estimates the unsuitability. For example, the processor 12 may separately calculate the estimated unsuitability of the computing working node N1, the working node N2, and the working node N for the existing service 13 according to the second formula:
Figure 108132068-A0101-12-0008-2
Among them: "i" represents the serial number of the working node; "μ" represents the existing service complexity of the existing service 13; "F i (μ)" represents the i-th working node's contribution to the existing service 13 of the existing service complexity "μ" Estimated unsuitability "s" indicates the preset service complexity in the unsuitability table 111; "S" indicates the preset service complexity set in the unsuitability table 111; "T i (s)" indicates the unsuitability table 111 The i-th working node of is the default unsuitability of the service with the default service complexity "s"; and "g(s,μ,σ)" represents a Gaussian function, and its average and standard deviation are respectively "μ" and "σ".

根據第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 service 13 is "10 ", according to the second formula, the estimated unsuitability of the working node N1 is "F N1 (10)=10×g(5,10,1)+ 0×g(10,10,1)+20×g( 15,10,1)=0.00001487083+0+0.00002974167=0.00004461251". Similarly, according to Equation 2, the estimated unsuitability of the working node N2 for the existing service 13 "F N2 (10)" is "10.0000297417", and the estimated unsuitability of the working node N3 for the existing service 13 "F N2 (10 )" is "20.0000148708".

Figure 108132068-A0101-12-0009-14
Figure 108132068-A0101-12-0009-14

在針對工作節點N1、N2、N3分別計算出估測不適合度之後,處理器12可根據該複數個估測不適合度計算各該工作節點之一選擇權重。舉例而言,在某些實施例中,處理器12可將該複數個估測不適合度中的最大者與各該估測不適合度的一比值作為各該工作節點對應於該現有服務的一 選擇權重。因此,工作節點N1的選擇權重為「

Figure 108132068-A0101-12-0009-19
448305.08014」,工作節點N2的選擇權重為「
Figure 108132068-A0101-12-0009-20
1.99999553875」,而工作節點N3的選擇權重則為「
Figure 108132068-A0101-12-0009-21
」。 After calculating the estimated unsuitability for the working nodes N1, N2, and N3, the processor 12 may calculate one of the selection weights of each working node according to the plurality of estimated unsuitability. For example, in some embodiments, the processor 12 may use a ratio of the largest of the plurality of estimated unsuitability degrees to each of the estimated unsuitability degrees as a selection of each working node corresponding to the existing service. Weights. Therefore, the selection weight of the working node N1 is "
Figure 108132068-A0101-12-0009-19
448305.08014", the selection weight of the working node N2 is "
Figure 108132068-A0101-12-0009-20
1.99999553875", and the selection weight of the worker node N3 is "
Figure 108132068-A0101-12-0009-21
".

處理器12可進一步將工作節點N1、工作節點N2以及工作節點N3的選擇權重進行標準化,以分別計算出工作節點N1、N2、N3的調派機 率。此時,工作節點N1的調派機率為「

Figure 108132068-A0101-12-0009-16
0.9999933」、工作節點N2的調派機率為「
Figure 108132068-A0101-12-0009-17
0.0000043」,而工作節點N3的調派機率則為「
Figure 108132068-A0101-12-0009-18
0.0000022」。處理器12可根據工作節點N1、N2、N3的調派機率而從中選擇一目標工作節點。在此例中,處理器12可選擇調派機率最高的工作節點N1做為目標工作節點TN,以將現有服務13調派給工作節點N1處理。 The processor 12 may further standardize the selection weights of the work node N1, the work node N2, and the work node N3 to calculate the dispatch probability of the work nodes N1, N2, and N3, respectively. At this time, the dispatch probability of worker node N1 is "
Figure 108132068-A0101-12-0009-16
0.9999933'', and the dispatch probability of worker node N2 is "
Figure 108132068-A0101-12-0009-17
0.0000043", and the dispatch probability of working node N3 is "
Figure 108132068-A0101-12-0009-18
0.0000022". The processor 12 can select a target working node from among the working nodes N1, N2, and N3 according to the dispatch probability. In this example, the processor 12 can select the worker node N1 with the highest dispatch probability as the target worker node TN, so as to dispatch the existing service 13 to the worker node N1 for processing.

在某些實施例中,處理器12可動態地更新不適合度表111中的預設不適合度。舉例而言,在工作節點N1(即,目標工作節點TN)完成現有服務13之後,處理器12可根據下方第3式計算工作節點N1對於現有服務13的一估測效能,並且根據該估測效能與不適合度表111中的複數個預設服務複雜度之間的差距絕對值,在不適合度表111中分別更新與工作節點N1有關的預設不適合度。 In some embodiments, the processor 12 may dynamically update the preset unsuitability in the unsuitability table 111. For example, after the work node N1 (ie, the target work node TN) completes the existing service 13, the processor 12 may calculate an estimated performance of the work node N1 for the existing service 13 according to the following formula 3, and according to the estimate The absolute value of the gap between the plurality of preset service complexity in the performance and unsuitability table 111 is updated in the unsuitability table 111 with the default unsuitability related to the working node N1.

Figure 108132068-A0101-12-0010-34
當中:「S」表示不適合度表111中的預設服務複雜度集合;「Ti(S)」表示不適合度表111中第i個工作節點的原預設不適合度集合;「
Figure 108132068-A0101-12-0010-24
(S)」表示欲用以更新該原預設不適合度集合的新預設不適合度集合;「μ」表示現有服務13的服務複雜度;「Ri(μ)」表示第i個工作節點對於現有服務複雜度「μ」的現有服務13的估測效能;且「g(S,μ,σ)」表示一高斯函數,且其平均值和標準差分別為「μ」和「σ」;「μ」表示現有服務13的服務複雜度;且「σ」表示更新範圍參數。
Figure 108132068-A0101-12-0010-34
Among them: "S" represents the preset service complexity set in the unsuitability table 111; "T i (S)" represents the original preset unsuitability set of the i-th working node in the unsuitability table 111;
Figure 108132068-A0101-12-0010-24
(S)" indicates the new default unsuitability set to be used to update the original default unsuitability set; "μ" indicates the service complexity of the existing service 13; "R i (μ)" indicates that the i-th working node is The estimated performance of the existing service 13 with the existing service complexity "μ"; and "g(S,μ,σ)" represents a Gaussian function, and its average and standard deviation are "μ" and "σ"respectively;"μ" represents the service complexity of the existing service 13; and "σ" represents the update range parameter.

於第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 processor 12 can determine the adjustment range of the original preset unsuitability set in the unsuitability table 111 through the standard deviation “σ” of the Gaussian function “g(S, μ, σ)”. Considering that the computing power of working nodes in some systems (such as IoT systems) may fluctuate, the processor 12 can use the Gaussian function to limit the range by which each preset unsuitability in the unsuitability table 111 is adjusted, so as to avoid the range. The adjustment is adversely affected by changes in the computing power of working nodes.

在某些實施例中,第i個工作節點對於現有服務複雜度「μ」的現有服務13的估測效能「Ri(μ)」可以第4式來表示:

Figure 108132068-A0101-12-0011-3
當中:「i」表示工作節點的序號;「μ」表示現有服務13的現有服務複雜度;「P」表示現有服務13的預期作業成本;「Ci」表示第i個工作節點對現有服務13的實際作業成本;「L」表示系統負載參數;且「θ」表示效能調節參數。 In some embodiments, the estimated performance "R i (μ)" of the existing service 13 with the existing service complexity "μ" of the i-th working node can be expressed by Equation 4:
Figure 108132068-A0101-12-0011-3
Among them: "i" represents the serial number of the work node; "μ" represents the existing service complexity of the existing service 13; "P" represents the expected operating cost of the existing service 13; "C i "represents the i-th work node's contribution to the existing service 13 The actual operating cost; "L" represents the system load parameter; and "θ" represents the performance adjustment parameter.

於第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式來表示:

Figure 108132068-A0101-12-0012-4
當中「StdCost」表示目標工作節點TN完成現有服務13的一實際作業成本。由第5式可看出,估測效能「Ri(μ)」相當於是現有服務13的常態作業成本與目標工作節點TN完成現有服務13的一實際作業成本的一比值和一效能調節參數「θ」的一乘積。 Since the average value "μ" is used to represent the existing service complexity of the existing service 13, according to the first and fourth formulas, the i-th working node estimates the existing service 13 with the existing service complexity "μ" The performance "R i (μ)" can also be expressed in formula 5:
Figure 108132068-A0101-12-0012-4
Among them, "StdCost" represents an actual operating cost for the target worker node TN to complete the existing service 13. It can be seen from formula 5 that the estimated performance "R i (μ)" is equivalent to a ratio of the normal operating cost of the existing service 13 to the actual operating cost of the target work node TN to complete the existing service 13 and a performance adjustment parameter " A product of θ".

在某些實施例中,效能調節參數「θ」可以第6式來表示:

Figure 108132068-A0101-12-0012-5
當中:「min{ }」表示選擇最小值;「max{ }」表示選擇最大值;「i」表示工作節點的序號;「Ci」表示第i個工作節點對現有服務13的實際作業成本;「P」表示現有服務13的預期作業成本;且「L」表示系統負載參數。 In some embodiments, the performance adjustment parameter "θ" can be expressed by Equation 6:
Figure 108132068-A0101-12-0012-5
Among them: "min{ }" indicates the minimum value; "max{ }" indicates the maximum value; "i" indicates the serial number of the working node; "C i "indicates the actual operating cost of the i-th working node for the existing service 13; "P" represents the expected operating cost of the existing service 13; and "L" represents the system load parameter.

根據第6式,效能調節參數「θ」為介於零到一之間的一實數,且在現有服務13的實際作業成本小於預期作業成本時,該效能調節參數「θ」的值小於一。綜合第5式與第6式可得知,當該效能調節參數「θ」的值等於一,則估測效能「Ri(μ)」表示第i個工作節點對於現有服務複雜度「μ」的現 有服務13的實際效能(即「

Figure 108132068-A0101-12-0013-6
」)不被調整,而當該效能調節參數「θ」 的值小於一,則估測效能「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 service 13 is less than the expected operation cost, the value of the performance adjustment parameter "θ" is less than one. Combining the fifth and sixth formulas, it can be seen that when the value of the performance adjustment parameter "θ" is equal to one, the estimated performance "R i (μ)" represents the complexity of the i-th working node for the existing service "μ" The actual performance of existing services13 (i.e. "
Figure 108132068-A0101-12-0013-6
”) is not adjusted, and when the value of the performance adjustment parameter “θ” is less than one, the estimated performance “R i (μ)” means that the i-th working node has an existing service complexity of “μ” for the existing service 13 The actual performance will be adjusted down. In addition, according to formula 6, when the system load parameter "L" is smaller, the effect of the performance adjustment parameter "θ" will be more significant. Therefore, combining Formula 5 and Formula 6 can also know that when the system load is low (that is, the system load parameter "L" is small) and when the target working node TN is a high-performance working node (that is, the existing When the actual operating cost of the service 13 is less than the expected operating cost), the performance adjustment parameter "θ" can reduce the estimated performance "R i (μ)" of the target working node TN for the existing service 13, so as to increase the complexity of the service. The possibility of a service being dispatched to a high-performance worker node (ie, the target worker node TN). This is because high-complexity services are less common in systems with low load, so the frequency at which high-performance work nodes are assigned to services is relatively low, and at this time, the efficiency is reduced through the performance adjustment parameter "θ" The estimated performance "R i (μ)" of capable working nodes will increase the frequency of use of high-performance working nodes.

舉例而言,假設現有服務13的預期執行時間(即,該預期作業成本)為「1秒」,工作節點N1(即,目標工作節點TN)對於現有服務13的實際執行時間(即,該實際作業成本)為「0.8秒」,且該系統負載參數「L」為工作節點N1、N2、N3的數量(即,三個),則根據第6式,可得到工作節 點N1的效能調節參數為:「

Figure 108132068-A0101-12-0013-7
」。隨 後再根據第4式,可得到「
Figure 108132068-A0101-12-0013-9
」,此亦即工作節點 N1對現有服務13的估測效能。接著,根據第3式,將可得到新預設不適合度集合「
Figure 108132068-A0101-12-0014-26
(S)」,也就是,「
Figure 108132068-A0101-12-0014-38
g(5,10,1)=9.999」、「
Figure 108132068-A0101-12-0014-39
0.997」、以及「
Figure 108132068-A0101-12-0014-40
」。根據上述計算,不適合度表111中有關工作節點N1的原預設服務複雜度將被更新為如表二所示:
Figure 108132068-A0101-12-0014-15
For example, assuming that the expected execution time of the existing service 13 (that is, the expected operation cost) is "1 second", the actual execution time of the existing service 13 (that is, the actual Operating cost) is "0.8 seconds", and the system load parameter "L" is the number of working nodes N1, N2, and N3 (that is, three), then according to formula 6, the performance adjustment parameter of working node N1 can be obtained as : "
Figure 108132068-A0101-12-0013-7
". Then according to formula 4, we can get "
Figure 108132068-A0101-12-0013-9
"This is the estimated performance of the working node N1 on the existing service 13. Then, according to the third formula, a new preset unsuitability set will be obtained
Figure 108132068-A0101-12-0014-26
(S)", that is, "
Figure 108132068-A0101-12-0014-38
g(5,10,1)=9.999", "
Figure 108132068-A0101-12-0014-39
0.997", and "
Figure 108132068-A0101-12-0014-40
". According to the above calculation, the original preset service complexity of the working node N1 in the unsuitability table 111 will be updated as shown in Table 2:
Figure 108132068-A0101-12-0014-15

從表二可看出工作節點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 service dispatching method 2 performed by a service dispatching device. The service dispatching device stores an unsuitability table, and the unsuitability table corresponds to a plurality of presets for each record of a plurality of working nodes. Multiple preset unsuitability of service complexity. Service dispatching method 2 may include the following steps: calculating the complexity of an existing service (marked as 201); according to the complexity of the existing service and the unsuitability table, calculating the estimate of each working node relative to one of the existing services Measure the unsuitability (marked as 202); calculate the dispatch probability (marked as 203) of each of the working nodes based on the plurality of estimated unsuitability degrees; and select a target from the plural working nodes based on the plurality of dispatch probabilities The work node, and dispatch the existing service to the target work node (marked as 204).

在某些實施例中,關於服務調派方法2,各該估測不適合度是相對應的工作節點在該不適合度表中的複數個預設不適合度各自與一高斯函數相乘後相加的總合,該高斯函數的平均值為該現有服務複雜度。 In some embodiments, with regard to service dispatch method 2, each estimated unsuitability is the total sum of a plurality of preset unsuitability of the corresponding working node in the unsuitability table, each multiplied by a Gaussian function. Together, the average value of the Gaussian function is the existing service complexity.

在某些實施例中,關於服務調派方法2,該複數個調派機率是由該服務調派設備透過將該複數個估測不適合度中之最高者與各該估測不適合度之比值進行標準化所計算而得。 In some embodiments, regarding service dispatch method 2, the plurality of dispatch probabilities are calculated by the service dispatch device by standardizing the ratio of the highest of the plurality of estimated unsuitability to each estimated unsuitability And gotta.

在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值。 In some embodiments, regarding service dispatch method 2, the existing service complexity is a ratio of a normal operating cost of the existing service to an expected operating cost of the existing service.

在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值。除此之外,服務調派方法2還可包含以下步驟:計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值 和一效能調節參數的一乘積;以及根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。 In some embodiments, regarding service dispatch method 2, the existing service complexity is a ratio of a normal operating cost of the existing service to an expected operating cost of the existing service. In addition, the service dispatch method 2 may also include the following steps: calculating an estimated performance of the target worker node, the estimated performance being a ratio of the normal operating cost of the existing service and the target worker node completing the existing service A ratio of actual operating costs And a product of a performance adjustment parameter; and according to the absolute value of the difference between the estimated performance and the plurality of preset service complexity values, the plurality of corresponding to the target work node is updated in the unsuitability table. Preset unsuitability.

在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值,且服務調派方法2還可包含以下步驟:計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值和一效能調節參數的一乘積;以及根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。除此之外,該效能調節參數可被定義為: min{max{

Figure 108132068-A0101-12-0016-33
,0},1} 當中,min{ }表示選擇最小值,max{ }表示選擇最大值,x表示該目標工作節點完成該現有服務的該實際作業成本與該現有服務的該預期作業成本的一比值,且L表示該複數個工作節點之數量。 In some embodiments, regarding service dispatching method 2, the existing service complexity is a ratio of a normal operating cost of the existing service to an expected operating cost of the existing service, and the service dispatching method 2 may further include the following steps : Calculate an estimated performance of the target work node, the estimated performance is a ratio of the normal operating cost of the existing service to an actual operating cost of the target work node to complete the existing service and a product of a performance adjustment parameter ; And according to the absolute value of the difference between the estimated performance and the plurality of preset service complexity values, the plurality of preset unsuitability levels related to the target work node are respectively updated in the unsuitability table. In addition, the performance adjustment parameter can be defined as: min{max{
Figure 108132068-A0101-12-0016-33
,0},1} Among them, min{} represents the minimum value, max{} represents the maximum value, and x represents the actual cost of the existing service for the target worker node and the expected cost of the existing service. The ratio, and L represents the number of the plurality of working nodes.

在某些實施例中,關於服務調派方法2,該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值,且服務調派方法2還可包含以下步驟:計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值 和一效能調節參數的一乘積;以及根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。除此之外,該服務調派設備根據各該差距絕對值和相對應的預設不適合度之間的差距和一高斯函數的乘積來更新與該目標工作節點有關的該複數個預設不適合度,該高斯函數的平均值為該現有服務複雜度。 In some embodiments, regarding service dispatching method 2, the existing service complexity is a ratio of a normal operating cost of the existing service to an expected operating cost of the existing service, and the service dispatching method 2 may further include the following steps : Calculate an estimated performance of the target work node, the estimated performance is a ratio of the normal operating cost of the existing service to the actual operating cost of the target work node to complete the existing service And a product of a performance adjustment parameter; and according to the absolute value of the difference between the estimated performance and the plurality of preset service complexity values, the plurality of corresponding to the target work node is updated in the unsuitability table. Preset unsuitability. In addition, the service dispatching device updates the plurality of preset unsuitability degrees related to the target working node according to the product of the difference between the absolute value of each difference and the corresponding preset unsuitability degree and a Gaussian function, The average value of the Gaussian function is the existing service complexity.

在某些實施例中,可由服務調派設備1進行服務調派方法2。由於本發明所屬技術領域中具有通常知識者可根據上文針對服務調派設備1的說明而清楚得知服務調派方法2的其他對應實施例,故相關細節於此不再贅述。 In some embodiments, the service dispatching device 1 can perform the service dispatching method 2. Since those with ordinary knowledge in the technical field to which the present invention pertains can clearly know other corresponding embodiments of the service dispatching method 2 based on the description of the service dispatching device 1 above, the relevant details will not be repeated here.

不同於傳統的服務調派方法僅以工作節點本身的運算能力做為服務調派的依據,本發明的實施例中的服務調派設備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 service dispatching device 1 and the service dispatching method 2 in the embodiment of the present invention will be based on the incompatibility between the service and the working node. Dispatching services can effectively improve the shortcomings of traditional service dispatching methods. In this way, at least the effect of system performance optimization and application completion schedule controllable can be achieved. In addition, because the service dispatching device 1 and the service dispatching method 2 can instantly adjust the unsuitability according to the actual execution status of the working node and the load status of the system, they have strong adaptability.

以上所揭露的實施例並非為了限制本發明。針對以上所揭露的實施例的改變或調整,只要是本發明所屬技術領域中具有通常知識者可輕易思及的,也都落於本發明的範圍內。本發明的範圍以申請專利範圍所載內容為準。 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‧‧‧步驟 Steps 201, 202, 203, 204‧‧‧

Claims (14)

一種服務調派設備,包含:一儲存器,用以儲存一不適合度表,該不適合度表針對複數個工作節點之每一者記錄分別對應到複數個預設服務複雜度之複數個預設不適合度;以及一處理器,與該儲存器電性連接,用以:計算一現有服務之一現有服務複雜度;根據該現有服務複雜度以及該不適合度表,計算各該工作節點相對於該現有服務之一估測不適合度;根據該複數個估測不適合度計算各該工作節點之一調派機率;以及基於該複數個調派機率,自該複數個工作節點中選擇一目標工作節點,並將該現有服務調派給該目標工作節點。 A service dispatching device, comprising: a memory for storing an unsuitability table, the unsuitability table records a plurality of preset unsuitability degrees corresponding to a plurality of preset service complexities for each of a plurality of working nodes. And a processor, electrically connected to the storage, for: calculating an existing service complexity of an existing service; according to the existing service complexity and the unsuitability table, calculating each of the working nodes relative to the existing service One of the estimated unsuitability; calculates the dispatch probability of each of the working nodes based on the plurality of estimated unsuitability; and based on the plurality of dispatch probabilities, a target working node is selected from the plurality of working nodes, and the existing The service is dispatched to the target worker node. 如請求項1所述的服務調派設備,其中各該估測不適合度是相對應的工作節點在該不適合度表中的複數個預設不適合度各自與一高斯函數相乘後相加的總合,且該高斯函數的平均值為該現有服務複雜度。 The service dispatch device according to claim 1, wherein each of the estimated unsuitability is the sum of a plurality of preset unsuitability of the corresponding working node in the unsuitability table, each multiplied by a Gaussian function. , And the average value of the Gaussian function is the existing service complexity. 如請求項1所述的服務調派設備,其中該處理器透過將該複數個估測不適合度中之最高者與各該估測不適合度之比值進行標準化來計算該複數個調派機率。 The service dispatch device according to claim 1, wherein the processor calculates the plurality of dispatch probabilities by normalizing the ratio of the highest one of the plurality of estimated unsuitability degrees to each of the estimated unsuitability degrees. 如請求項1所述的服務調派設備,其中該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值。 The service dispatching device according to claim 1, wherein the existing service complexity is a ratio of a normal operating cost of the existing service to an expected operating cost of the existing service. 如請求項4所述的服務調派設備,其中: 該處理器還用以計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值和一效能調節參數的一乘積;且該處理器還用以根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。 The service dispatch device according to claim 4, wherein: The processor is also used to calculate an estimated performance of the target worker node, the estimated performance being a ratio and performance of the normal operating cost of the existing service to an actual operating cost of the target worker node to complete the existing service A product of the adjustment parameter; and the processor is also used to update in the unsuitability table the information related to the target working node according to the absolute value of the difference between the estimated performance and the plurality of preset service complexity values The plurality of preset unsuitability degrees. 如請求項5所述的服務調派設備,其中該效能調節參數被定義為: min{max{
Figure 108132068-A0101-13-0002-23
,0},1}當中,min{ }表示選擇最小值,max{ }表示選 擇最大值,x表示該目標工作節點完成該現有服務的該實際作業成本與該現有服務的該預期作業成本的一比值,且L表示該複數個工作節點之數量。
The service dispatching device according to claim 5, wherein the performance adjustment parameter is defined as: min{max{
Figure 108132068-A0101-13-0002-23
,0},1}, min{} represents the minimum value selected, max{} represents the maximum value selected, x represents the actual cost of the existing service completed by the target worker node and the expected cost of the existing service The ratio, and L represents the number of the plurality of working nodes.
如請求項5所述的服務調派設備,其中該處理器根據各該差距絕對值和相對應的預設不適合度之間的差距和一高斯函數的乘積來更新與該目標工作節點有關的該複數個預設不適合度,且該高斯函數的平均值為該現有服務複雜度。 The service dispatching device according to claim 5, wherein the processor updates the complex number related to the target working node according to the product of the difference between the absolute value of each difference and the corresponding preset unsuitability and a Gaussian function A preset unsuitability degree, and the average value of the Gaussian function is the existing service complexity. 一種由一服務調派設備進行的服務調派方法,該服務調派設備儲存一不適合度表,該不適合度表針對複數個工作節點之每一者記錄分別對應到複數個預設服務複雜度之複數個預設不適合度,該服務調派方法包含:計算一現有服務之一現有服務複雜度;根據該現有服務複雜度以及該不適合度表,計算各該工作節點相對於該現有服務之一估測不適合度;根據該複數個估測不適合度計算各該工作節點之一調派機率;以及 基於該複數個調派機率,自該複數個工作節點中選擇一目標工作節點,並將該現有服務調派給該目標工作節點。 A service dispatching method performed by a service dispatching device. The service dispatching device stores an unsuitability table. The unsuitability table records each of a plurality of working nodes corresponding to a plurality of preset service complexity. Supposing unsuitability, the service dispatch method includes: 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; Calculate the dispatch probability of one of the working nodes based on the plurality of estimated unsuitability; and Based on the plurality of dispatching probabilities, a target worker node is selected from the plurality of worker nodes, and the existing service is dispatched to the target worker node. 如請求項8所述的服務調派方法,其中各該估測不適合度是相對應的工作節點在該不適合度表中的複數個預設不適合度各自與一高斯函數相乘後相加的總合,且該高斯函數的平均值為該現有服務複雜度。 The service dispatch method according to claim 8, wherein each of the estimated unsuitability degrees is the sum of the plural preset unsuitability degrees of the corresponding working node in the unsuitability degree table, each multiplied by a Gaussian function. , And the average value of the Gaussian function is the existing service complexity. 如請求項8所述的服務調派方法,其中該複數個調派機率是由該服務調派設備透過將該複數個估測不適合度中之最高者與各該估測不適合度之比值進行標準化所計算而得。 The service dispatch method according to claim 8, wherein the plurality of dispatch probabilities are calculated by the service dispatch device by standardizing the ratio of the highest of the plurality of estimated unsuitability to each estimated unsuitability Got. 如請求項8所述的服務調派方法,其中該現有服務複雜度是該現有服務的一常態作業成本與該現有服務的一預期作業成本的一比值。 The service dispatch method according to claim 8, wherein the existing service complexity is a ratio of a normal operating cost of the existing service to an expected operating cost of the existing service. 如請求項11所述的服務調派方法,還包含:計算該目標工作節點的一估測效能,該估測效能是該現有服務的該常態作業成本與該目標工作節點完成該現有服務的一實際作業成本的一比值和一效能調節參數的一乘積;以及根據該估測效能與該複數個預設服務複雜度值之間的差距絕對值,在該不適合度表中分別更新與該目標工作節點有關的該複數個預設不適合度。 The service dispatch method according to claim 11, further comprising: calculating an estimated performance of the target worker node, the estimated performance being the normal operating cost of the existing service and an actual performance of the target worker node completing the existing service A ratio of the operating cost and a product of a performance adjustment parameter; and according to the absolute value of the difference between the estimated performance and the plurality of preset service complexity values, update the target operating node in the unsuitability table respectively The plurality of preset unsuitability degrees are related. 如請求項12所述的服務調派方法,其中該效能調節參數被定義為: min{max{
Figure 108132068-A0101-13-0003-31
,0},1} 當中,min{ }表示選擇最小值,max{ }表示選擇最大值,x表示該目標工作節點完成該現有服務的該實際作業成本與該現有服務的該預期作業成本的一比值,且L表示該複數個工作節點之數量。
The service dispatch method according to claim 12, wherein the performance adjustment parameter is defined as: min{max{
Figure 108132068-A0101-13-0003-31
,0},1} Among them, min{} represents the minimum value, max{} represents the maximum value, and x represents the actual cost of the existing service for the target worker node and the expected cost of the existing service. The ratio, and L represents the number of the plurality of working nodes.
如請求項12所述的服務調派方法,其中該服務調派設備根據各該差距絕對值和相對應的預設不適合度之間的差距和一高斯函數的乘積來更新與該目標工作節點有關的該複數個預設不適合度,且該高斯函數的平均值為該現有服務複雜度。 The service dispatching method according to claim 12, wherein the service dispatching device updates the product related to the target working node according to the difference between the absolute value of each difference and the corresponding preset unsuitability and the product of a Gaussian function A plurality of preset unsuitability degrees, and the average value of the Gaussian function is the existing service complexity.
TW108132068A 2019-09-05 2019-09-05 Equipment and method for assigning services TWI724531B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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
EP3488342A1 (en) * 2016-07-20 2019-05-29 Worldline Multi-criteria adaptive scheduling for a market-oriented hybrid cloud infrastructure
CN107844879A (en) * 2017-06-27 2018-03-27 北京小度信息科技有限公司 Order allocation method and device

Patent Citations (4)

* Cited by examiner, † Cited by third party
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
US8570905B2 (en) Adaptive enterprise service bus (ESB) runtime system and method
CN111966361B (en) Method, device, equipment and storage medium for determining model to be deployed
CN110225104A (en) Data capture method, device and terminal device
WO2013101024A1 (en) Imaging task pipeline acceleration
TW202123003A (en) Load balancing device and method for an edge computing network
US20190171439A1 (en) Optimizing feature deployment based on usage pattern
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
CN111355814B (en) Load balancing method, device and storage medium
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
WO2007071342A1 (en) Systems and methods for quantitative application measurement
KR20230035750A (en) Methodes, devices and systems for tailored interior design and providing quote information
Souza et al. Ranking strategies for quality-aware service selection
US9858551B2 (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