两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

用于優(yōu)化多任務(wù)處理服務(wù)器的分配的方法和系統(tǒng)的制作方法

文檔序號:10624655閱讀:314來源:國知局
用于優(yōu)化多任務(wù)處理服務(wù)器的分配的方法和系統(tǒng)的制作方法
【專利摘要】提供了優(yōu)化多任務(wù)處理服務(wù)器的分配。接收標(biāo)識多個(gè)時(shí)間段的時(shí)間表。時(shí)間表將多個(gè)服務(wù)器中的每個(gè)服務(wù)器與至少一個(gè)時(shí)間段相關(guān)聯(lián)。確定多個(gè)服務(wù)器中的每個(gè)服務(wù)器的包括多任務(wù)處理閾值的性能特征。執(zhí)行多個(gè)服務(wù)器的模擬以確定該模擬的服務(wù)水平。接收標(biāo)識多個(gè)事件的工作負(fù)載。每個(gè)事件被分配給服務(wù)器。確定每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo)。至少部分地基于每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo)來確定模擬的服務(wù)水平。至少部分地基于服務(wù)水平和目標(biāo)服務(wù)水平中的至少一個(gè)來優(yōu)化時(shí)間表。
【專利說明】
用于優(yōu)化多任務(wù)處理服務(wù)器的分配的方法和系統(tǒng)
技術(shù)領(lǐng)域
[0001 ]本發(fā)明一般涉及排隊(duì)論領(lǐng)域,更具體地,涉及優(yōu)化服務(wù)傳送環(huán)境中多技能多任務(wù)處理服務(wù)器的分配。
【背景技術(shù)】
[0002]排隊(duì)論是隊(duì)列的數(shù)學(xué)研究。在排隊(duì)論中,構(gòu)建模型以使得隊(duì)列長度、等待時(shí)間和其它指標(biāo)可被預(yù)測。在計(jì)算的環(huán)境中,隊(duì)列的示例包括流傳輸視頻,其中路由器對等待被傳輸?shù)搅硪粋€(gè)路由器的數(shù)據(jù)分組進(jìn)行排隊(duì)。另一個(gè)示例包括計(jì)算機(jī)的硬件組件(諸如網(wǎng)絡(luò)適配器)對等待被網(wǎng)絡(luò)適配器處理或傳輸?shù)倪M(jìn)入或輸出分組進(jìn)行排隊(duì)。排隊(duì)論也可以應(yīng)用于服務(wù)傳送。
[0003]在IT服務(wù)傳送中,最小化對客戶的業(yè)務(wù)操作的破壞是非常重要的。當(dāng)在IT系統(tǒng)中發(fā)生嚴(yán)重宕機(jī)時(shí),服務(wù)提供商只有幾個(gè)小時(shí)或更少的時(shí)間來恢復(fù)系統(tǒng)操作,或者他們可能面臨嚴(yán)厲的處罰、失去收入以及現(xiàn)有和未來的業(yè)務(wù)機(jī)會的可能丟失。
[0004]致力于對宕機(jī)系統(tǒng)恢復(fù)操作的是代理,其可以是有經(jīng)驗(yàn)的管理器和項(xiàng)目管理器,例如稱為值班管理器(DM)、可用性管理器(AM)或重大事件管理器(ΜΠΟ。因此,代理通過處理事件來提供服務(wù)。

【發(fā)明內(nèi)容】

[0005]根據(jù)本發(fā)明的一個(gè)實(shí)施例,提供了一種用于優(yōu)化多任務(wù)處理服務(wù)器的分配的方法。該方法包括由一個(gè)或多個(gè)處理器接收標(biāo)識多個(gè)時(shí)間段的時(shí)間表,其中,該時(shí)間表將多個(gè)服務(wù)器中的每個(gè)服務(wù)器與至少一個(gè)時(shí)間段相關(guān)聯(lián);由一個(gè)或多個(gè)處理器確定多個(gè)服務(wù)器中的每個(gè)服務(wù)器的一個(gè)或多個(gè)性能特征,其中,一個(gè)或多個(gè)性能特征包括多任務(wù)處理閾值;由一個(gè)或多個(gè)處理器通過以下操作來執(zhí)行多個(gè)服務(wù)器的模擬以確定該模擬的服務(wù)水平:由一個(gè)或多個(gè)處理器接收標(biāo)識多個(gè)事件的工作負(fù)載;由一個(gè)或多個(gè)處理器將多個(gè)事件中的每個(gè)事件分配給多個(gè)服務(wù)器中的服務(wù)器;由一個(gè)或多個(gè)處理器確定多個(gè)時(shí)間段中的每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo);由一個(gè)或多個(gè)處理器至少部分地基于每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo),確定模擬的服務(wù)水平;以及由一個(gè)或多個(gè)處理器基于服務(wù)水平和目標(biāo)服務(wù)水平中的至少一個(gè)來優(yōu)化時(shí)間表。
[0006]根據(jù)本發(fā)明的另一個(gè)實(shí)施例,提供了一種用于優(yōu)化多任務(wù)處理服務(wù)器的分配的計(jì)算機(jī)程序產(chǎn)品。該計(jì)算機(jī)程序產(chǎn)品包括計(jì)算機(jī)可讀存儲介質(zhì)和存儲在計(jì)算機(jī)可讀存儲介質(zhì)上的程序指令。該程序指令包括:接收標(biāo)識多個(gè)時(shí)間段的時(shí)間表的程序指令,其中,該時(shí)間表將多個(gè)服務(wù)器中的每個(gè)服務(wù)器與至少一個(gè)時(shí)間段相關(guān)聯(lián);確定多個(gè)服務(wù)器中的每個(gè)服務(wù)器的一個(gè)或多個(gè)性能特征的程序指令,其中,一個(gè)或多個(gè)性能特征包括多任務(wù)處理閾值;通過以下操作執(zhí)行多個(gè)服務(wù)器的模擬以確定模擬的服務(wù)水平的程序指令:接收標(biāo)識多個(gè)事件的工作負(fù)載的程序指令;將多個(gè)事件中的每個(gè)事件分配給多個(gè)服務(wù)器中的服務(wù)器的程序指令;確定多個(gè)時(shí)間段中的每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo)的程序指令;以及至少部分地基于每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo),確定模擬的服務(wù)水平的程序指令;以及至少部分地基于服務(wù)水平和目標(biāo)服務(wù)水平中的至少一個(gè),優(yōu)化時(shí)間表的程序指令。
[0007]根據(jù)本發(fā)明的另一個(gè)實(shí)施例,提供了一種用于優(yōu)化多任務(wù)處理服務(wù)器的分配的計(jì)算機(jī)系統(tǒng)。該計(jì)算機(jī)系統(tǒng)包括:一個(gè)或多個(gè)計(jì)算機(jī)處理器;一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲介質(zhì);以及在計(jì)算機(jī)可讀存儲介質(zhì)上存儲的程序指令,以用于由一個(gè)或多個(gè)處理器中的至少一個(gè)執(zhí)行。該程序指令包括:接收標(biāo)識多個(gè)時(shí)間段的時(shí)間表的程序指令,其中,該時(shí)間表將多個(gè)服務(wù)器中的每個(gè)服務(wù)器與至少一個(gè)時(shí)間段相關(guān)聯(lián);確定多個(gè)服務(wù)器中的每個(gè)服務(wù)器的一個(gè)或多個(gè)性能特征的程序指令,其中,一個(gè)或多個(gè)性能特征包括多任務(wù)處理閾值;通過以下操作來執(zhí)行多個(gè)服務(wù)器的模擬以確定模擬的服務(wù)水平的程序指令:接收標(biāo)識多個(gè)事件的工作負(fù)載的程序指令;將多個(gè)事件中的每個(gè)事件分配給多個(gè)服務(wù)器中的服務(wù)器的程序指令;確定多個(gè)時(shí)間段中的每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo)的程序指令;以及至少部分地基于每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo),確定模擬的服務(wù)水平的程序指令;以及至少部分地基于服務(wù)水平和目標(biāo)服務(wù)水平中的至少一個(gè),優(yōu)化時(shí)間表的程序指令。
【附圖說明】
[0008]圖1是根據(jù)本公開的實(shí)施例的說明計(jì)算環(huán)境的功能性框圖;
[0009]圖2是根據(jù)本公開的實(shí)施例的描繪用于優(yōu)化圖1的計(jì)算環(huán)境內(nèi)的配置的操作的流程圖;
[0010]圖3是根據(jù)本公開的實(shí)施例的描繪用于在圖1的計(jì)算環(huán)境內(nèi)分配所接收的事件的操作的流程圖;
[0011]圖4是根據(jù)本公開的實(shí)施例的描繪用于在圖1的計(jì)算環(huán)境內(nèi)分配事件的操作的流程圖;
[0012]圖5是根據(jù)本公開的實(shí)施例的執(zhí)行用于優(yōu)化多任務(wù)處理服務(wù)器的分配的操作的計(jì)算裝置的組件的框圖。
【具體實(shí)施方式】
[0013]在本公開中,代理是排隊(duì)論服務(wù)器的示例。然而,本領(lǐng)域的技術(shù)人員知道本發(fā)明適用于其它服務(wù)傳送環(huán)境。處理事件的代理只有幾分鐘的時(shí)間來取得高嚴(yán)重性事件的所有權(quán),然后,整合各種有技能的IT資源的努力以支持客戶并根據(jù)明確定義的項(xiàng)目管理程序來創(chuàng)建事件的解決方案。代理能夠同時(shí)管理多個(gè)事件(即,多任務(wù)處理)。本發(fā)明的實(shí)施例認(rèn)識到挑戰(zhàn)包括根據(jù)項(xiàng)目變量的種類和數(shù)量的有效配置(即,服務(wù)器的分配)和工作負(fù)載分配兩者,其中,項(xiàng)目變量諸如是代理技能集合和專家水平、獨(dú)特的業(yè)務(wù)要求以及客戶事件的數(shù)量、嚴(yán)重性和類型。
[0014]本發(fā)明的實(shí)施例認(rèn)識到規(guī)劃工作負(fù)載的管理和規(guī)劃配置是復(fù)雜的問題,其對于每個(gè)項(xiàng)目是獨(dú)特的。組織可以確定代理配置需求,并基于歷史代理性能數(shù)據(jù)來人工地分配任務(wù)。然而,目前的服務(wù)傳送工作負(fù)載規(guī)劃方案并不提供確定滿足所有服務(wù)水平協(xié)議(SLA)要求的配置,同時(shí)考慮對項(xiàng)目、多技能代理和具有多任務(wù)處理能力的代理的業(yè)務(wù)約束。
[0015]本發(fā)明的實(shí)施例提供優(yōu)化服務(wù)器(即代理)的分配。例如,某些實(shí)施例優(yōu)化多任務(wù)處理服務(wù)器的分配,同時(shí)滿足用于處理事件的目標(biāo)SLA(或“目標(biāo)服務(wù)水平”)。在某些實(shí)施例中,優(yōu)化服務(wù)器的分配包括優(yōu)化被分配給包括一個(gè)或多個(gè)時(shí)間段的時(shí)間表的服務(wù)器的數(shù)量。實(shí)施例基于代理技能、代理多任務(wù)處理能力和業(yè)務(wù)約束,使用排隊(duì)論類型的模型來提供分配工作負(fù)載的基于啟發(fā)式的模擬。在某些實(shí)施例中,模擬基于歷史數(shù)據(jù)。其它實(shí)施例使用改進(jìn)最長空閑代理路由(LIAR)策略來提供事件分配。在附圖中的流程圖和框圖說明根據(jù)本發(fā)明的各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的架構(gòu)、功能和可能的實(shí)現(xiàn)的操作。在某些替代實(shí)現(xiàn)中,在方框中記錄的功能可以不按照附圖中指出的順序發(fā)生。例如,連續(xù)示出的兩個(gè)方框?qū)嶋H上可以基本并行地執(zhí)行,或者這些方框有時(shí)可按相反的順序執(zhí)行。
[0016]現(xiàn)在參考附圖詳細(xì)描述本公開。
[0017]圖1是根據(jù)本公開的實(shí)施例的說明計(jì)算環(huán)境的功能性框圖。例如,圖1是說明計(jì)算環(huán)境100的功能性框圖。計(jì)算環(huán)境100包括通過網(wǎng)絡(luò)120連接的用戶裝置110和服務(wù)器130。服務(wù)器130包括配置優(yōu)化器132、事件分配器134和數(shù)據(jù)庫136。
[0018]在該示例性實(shí)施例中,配置優(yōu)化器132、事件分配器134和數(shù)據(jù)庫136被存儲在服務(wù)器130上。在其它實(shí)施例中,配置優(yōu)化器132、事件分配器134和數(shù)據(jù)庫136中的一個(gè)或多個(gè)可以駐留在另一個(gè)計(jì)算裝置上,只要每一個(gè)可以訪問用戶裝置110并且可以互相訪問。在其它實(shí)施例中,配置優(yōu)化器132和事件分配器134中的一個(gè)或多個(gè)可以在外部存儲,并通過諸如網(wǎng)絡(luò)120的通信網(wǎng)絡(luò)訪問。網(wǎng)絡(luò)120可以例如是局域網(wǎng)(LAN)、諸如因特網(wǎng)的廣域網(wǎng)(WAN)或兩者的組合,并可包括有線、無線、光纖或本領(lǐng)域已知的任何其它連接。一般地,根據(jù)本發(fā)明的實(shí)施例,網(wǎng)絡(luò)120可以是連接和協(xié)議的任何組合,其將支持用戶裝置110與服務(wù)器130之間的通信。
[0019]用戶裝置110是允許訪問服務(wù)器130的裝置。在各種實(shí)施例中,用戶裝置110是計(jì)算裝置,其可以是獨(dú)立裝置、服務(wù)器、膝上型計(jì)算機(jī)、平板計(jì)算機(jī)、上網(wǎng)本計(jì)算機(jī)、個(gè)人計(jì)算機(jī)(PC)或桌上型計(jì)算機(jī)。在另一個(gè)實(shí)施例中,用戶裝置110代表利用集群計(jì)算機(jī)和組件充當(dāng)單個(gè)無縫資源池的計(jì)算系統(tǒng)。一般地,用戶裝置110可以是能夠通過網(wǎng)絡(luò)120訪問服務(wù)器130的任何計(jì)算裝置或裝置組合。用戶裝置110可包括內(nèi)部和外部硬件組件,如關(guān)于圖5進(jìn)一步詳細(xì)描繪和描述的。
[0020]配置優(yōu)化器132工作以基于一個(gè)或多個(gè)輸入?yún)?shù)確定優(yōu)化的配置時(shí)間表。配置時(shí)間表在多個(gè)時(shí)間段中分配多個(gè)代理。在各種實(shí)施例中,配置優(yōu)化器132通過最小化滿足所有業(yè)務(wù)要求所需的成員的數(shù)量、最小化對初始配置時(shí)間表進(jìn)行的變化的數(shù)量、或其組合,優(yōu)化配置時(shí)間表。如在此所使用的,一個(gè)或多個(gè)項(xiàng)目的“數(shù)量”是指在該一個(gè)或多個(gè)項(xiàng)目中有多少個(gè)項(xiàng)目的計(jì)數(shù)。
[0021]事件分配器134工作以管理和分配環(huán)境100內(nèi)的事件。在一個(gè)實(shí)施例中,事件分配器134將事件分配給代理。例如,事件分配器134響應(yīng)于將事件的要求與代理的技能匹配而將事件分配給可用代理。在另一個(gè)實(shí)施例中,事件分配器134響應(yīng)于確定沒有合格的代理可用而將事件放置在隊(duì)列中。例如,事件分配器134基于沒有具有匹配事件的要求的技能的可用代理而確定沒有合格的代理可用。
[0022]數(shù)據(jù)庫136是存儲項(xiàng)目數(shù)據(jù)的數(shù)據(jù)儲存庫。數(shù)據(jù)庫136是可被配置優(yōu)化器132和事件分配器134中的一個(gè)或兩者寫入和讀取的數(shù)據(jù)儲存庫。在各種實(shí)施例中,項(xiàng)目數(shù)據(jù)包括事件數(shù)據(jù)、配置數(shù)據(jù)和性能結(jié)果中的一個(gè)或多個(gè)。事件數(shù)據(jù)描述多個(gè)事件,其中每個(gè)事件具有事件到達(dá)時(shí)間和至少一個(gè)事件要求。在某些實(shí)施例中,多個(gè)事件中的事件具有事件類型(例如,橋接或聊天)。在一個(gè)實(shí)施例中,配置數(shù)據(jù)描述表示代理分配給時(shí)間段的至少一個(gè)配置時(shí)間表。在一個(gè)實(shí)施例中,配置數(shù)據(jù)描述多個(gè)代理,其中每個(gè)代理具有一個(gè)或多個(gè)性能特征。性能特征例如包括一組主技能、一組輔助技能和多任務(wù)處理能力。性能結(jié)果描述模擬的一個(gè)或多個(gè)性能指標(biāo)。在各種示例中,性能指標(biāo)包括自己的時(shí)間(TTO)、占用時(shí)間(engagetime)和SLA性能值。在一個(gè)實(shí)施例中,性能指標(biāo)包括模擬迭代的所達(dá)成的SLA(或“所達(dá)成的服務(wù)水平”)和至少部分地基于性能要求的置信水平而導(dǎo)出的置信區(qū)間,如以下所討論的。在某些實(shí)施例中,性能結(jié)果包括對于每個(gè)時(shí)間段的所達(dá)成的SLA和利用率。在一個(gè)實(shí)施例中,性能結(jié)果包括模擬迭代的所達(dá)成的SLA和模擬迭代的利用率,其中,所達(dá)成的SLA是通過聚集每個(gè)時(shí)間段的所達(dá)成的SLA而得到的,利用率是通過聚集每個(gè)時(shí)間段的利用率而得到的。時(shí)間段的利用率是在該時(shí)間段期間處理的事件數(shù)量的量度。
[0023]在某些實(shí)施例中,項(xiàng)目數(shù)據(jù)還包括描述用于模擬的一個(gè)或多個(gè)約束或性能要求的業(yè)務(wù)要求數(shù)據(jù)。在一個(gè)實(shí)施例中,模擬的性能要求標(biāo)識目標(biāo)SLA和置信水平。例如,為了滿足要求,模擬必須在根據(jù)置信水平得到的統(tǒng)計(jì)置信區(qū)間內(nèi)滿足目標(biāo)SLA。在另一個(gè)實(shí)施例中,用于模擬的約束標(biāo)識代理可處理的某一類型的事件的最大數(shù)量。例如,約束可指定代理并行處理的橋接事件(即,電話呼叫)的最大數(shù)量。在另一個(gè)實(shí)施例中,模擬的約束指定代理可并行處理的事件的最大數(shù)量。
[0024]在某些實(shí)施例中,項(xiàng)目數(shù)據(jù)是基于歷史數(shù)據(jù)的。在其它實(shí)施例中,項(xiàng)目數(shù)據(jù)被全部或部分地導(dǎo)出。例如,項(xiàng)目數(shù)據(jù)的一個(gè)或多個(gè)值可以從項(xiàng)目數(shù)據(jù)的其它值中導(dǎo)出。在一個(gè)實(shí)施例中,占用時(shí)間至少部分地基于事件的到達(dá)時(shí)間和事件的終止時(shí)間確定。例如,占用時(shí)間表示從事件的到達(dá)時(shí)間到事件的終止時(shí)間所經(jīng)過的時(shí)間。在另一個(gè)示例中,占用時(shí)間表示從代理接收事件(例如,基于事件的到達(dá)時(shí)間和事件的等待時(shí)間)到事件的終止時(shí)間所經(jīng)過的時(shí)間。在另一個(gè)示例中,事件在代理之間傳遞,在這種情況下,占用時(shí)間在代理之間被成比例地分割。在另一個(gè)實(shí)施例中,基于所有事件的總等待時(shí)間除以事件的總數(shù)量來確定ΤΤ0。在一個(gè)實(shí)施例中,配置優(yōu)化器132基于由處理由事件數(shù)據(jù)描述的工作負(fù)載的配置數(shù)據(jù)描述的代理的模擬,確定性能結(jié)果。在某些實(shí)施例中,模擬進(jìn)一步受到業(yè)務(wù)要求數(shù)據(jù)的限制,如下所述。
[0025]在某些實(shí)施例中,項(xiàng)目數(shù)據(jù)包括每個(gè)代理的多任務(wù)處理閾值或容量。代理的多任務(wù)處理閾值從該代理的性能數(shù)據(jù)中導(dǎo)出。在各種示例中,性能數(shù)據(jù)是歷史性能數(shù)據(jù)或者是來自前一次模擬迭代的性能數(shù)據(jù)。在一個(gè)實(shí)施例中,配置優(yōu)化器132基于由代理處理的并行事件的數(shù)量來確定代理的多任務(wù)處理閾值。例如,多任務(wù)處理閾值是在的多個(gè)時(shí)間段中的被分配了代理的每個(gè)時(shí)間段期間由該代理并行處理的事件的數(shù)量的平均值。在某些實(shí)施例中,配置優(yōu)化器132基于多任務(wù)處理檢測算法來確定代理的多任務(wù)處理閾值。在一個(gè)這種實(shí)施例中,配置優(yōu)化器132執(zhí)行一個(gè)或多個(gè)模擬以對不同類型的工作確定所達(dá)成的SLA。在另一個(gè)實(shí)施例中,配置優(yōu)化器132使用不同的多任務(wù)處理閾值執(zhí)行一個(gè)或多個(gè)模擬,以確定在每個(gè)多任務(wù)處理閾值處的每個(gè)模擬的性能指標(biāo)。配置優(yōu)化器132選擇與具有最高的所達(dá)成的SLA的模擬對應(yīng)的多任務(wù)處理水平和與根據(jù)歷史性能數(shù)據(jù)確定的多任務(wù)處理閾值最類似的多任務(wù)處理水平。
[0026]在某些實(shí)施例中,數(shù)據(jù)庫136可以被用戶裝置110或計(jì)算環(huán)境100以外的程序和實(shí)體寫入和讀取,以便用與系統(tǒng)操作相關(guān)的信息(例如,項(xiàng)目數(shù)據(jù))來填充存儲庫。
[0027]圖2是根據(jù)本公開的實(shí)施例的描繪用于優(yōu)化圖1的計(jì)算環(huán)境內(nèi)的多任務(wù)處理服務(wù)器的分配的操作的流程圖。例如,圖2是描繪計(jì)算環(huán)境100內(nèi)的服務(wù)器130上的配置優(yōu)化器132的操作200的流程圖。
[0028]在步驟202中,配置優(yōu)化器132接收將在模擬工作環(huán)境中使用的輸入?yún)?shù),在該工作環(huán)境中,代理處理多個(gè)事件的工作負(fù)載。在一個(gè)實(shí)施例中,輸入?yún)?shù)包括項(xiàng)目數(shù)據(jù)。例如,配置優(yōu)化器132接收包括配置數(shù)據(jù)和事件數(shù)據(jù)的項(xiàng)目數(shù)據(jù)。在一個(gè)實(shí)施例中,配置優(yōu)化器132識別(例如,輸入?yún)?shù)的)SLA值,其將用作工作負(fù)載模擬期間的目標(biāo)SLA。在某些實(shí)施例中,輸入?yún)?shù)中的一個(gè)或多個(gè)按照表示統(tǒng)計(jì)分布的數(shù)學(xué)等式或函數(shù)定義(例如,事件到達(dá)的泊松過程或分布、對數(shù)服務(wù)時(shí)間分布、包括一個(gè)或多個(gè)代理的多任務(wù)處理閾值或技能集合的矩陣)。例如,輸入?yún)?shù)可以包括用于一個(gè)或多個(gè)代理中的每一個(gè)的分布,其表示該代理對于多個(gè)事件的占用時(shí)間。在某些實(shí)施例中,輸入?yún)?shù)是整數(shù)(例如,成員的數(shù)量)。在某些實(shí)施例中,輸入?yún)?shù)基于歷史數(shù)據(jù)。在其它實(shí)施例中,輸入?yún)?shù)基于模擬工作環(huán)境的前一次迭代。
[0029]在步驟204中,配置優(yōu)化器132模擬工作負(fù)載的分配。配置優(yōu)化器132通過根據(jù)每個(gè)事件的到達(dá)時(shí)間分配多個(gè)事件來模擬工作負(fù)載的分配。配置優(yōu)化器132經(jīng)由事件分配器134分發(fā)每個(gè)事件,這結(jié)合圖3和圖4更詳細(xì)地討論。配置優(yōu)化器132基于至少包括事件數(shù)據(jù)和配置數(shù)據(jù)的一個(gè)或多個(gè)輸入?yún)?shù),模擬工作負(fù)載的分配。在一個(gè)實(shí)施例中,配置優(yōu)化器132使用歷史數(shù)據(jù)模擬事件的分配和處理。在一個(gè)示例中,歷史數(shù)據(jù)描述多個(gè)事件的到達(dá)時(shí)間、標(biāo)識分配給時(shí)間表的時(shí)間段的一個(gè)或多個(gè)代理的配置時(shí)間表、以及每個(gè)代理器的服務(wù)時(shí)間分布。在這種情況下,配置優(yōu)化器132模擬每個(gè)事件的到達(dá)和分配,基于此,配置優(yōu)化器132確定代理性能數(shù)據(jù)和產(chǎn)生的SLA達(dá)成水平。如在下面進(jìn)一步詳細(xì)解釋的,配置優(yōu)化器132可執(zhí)行這種模擬的多次迭代。輸入?yún)?shù)可隨著不同的迭代而改變或者保持不變。在一個(gè)實(shí)施例中,配置優(yōu)化器132在模擬迭代之間修改一個(gè)或多個(gè)輸入?yún)?shù)的值。例如,配置優(yōu)化器132可以在迭代之間添加代理(參見步驟208)或移除代理(參見步驟210)。配置優(yōu)化器132確定每次模擬迭代的性能結(jié)果。
[0030]在決策206中,配置優(yōu)化器132將所達(dá)成的SLA與目標(biāo)SLA進(jìn)行比較。在一個(gè)實(shí)施例中,配置優(yōu)化器132基于模擬的迭代的所達(dá)成的SLA、由性能要求標(biāo)識的目標(biāo)SLA以及由性能要求標(biāo)識的置信區(qū)間,將所達(dá)成的SLA與目標(biāo)SLA進(jìn)行比較。例如,如果目標(biāo)SLA在所達(dá)成的SLA的置信區(qū)間內(nèi),則配置優(yōu)化器132確定所達(dá)成的SLA滿足目標(biāo)SLA。在這種情況下,如果目標(biāo)SLA小于置信區(qū)間的下限,則配置優(yōu)化器132確定所達(dá)成的SLA高于目標(biāo)SLA(決策206,“SLA高于目標(biāo)”分支)。進(jìn)一步地,如果目標(biāo)SLA大于置信區(qū)間的上限,則配置優(yōu)化器132確定所達(dá)成的SLA低于目標(biāo)SLA(決策206,“SLA低于目標(biāo)”分支)。
[0031]如果配置優(yōu)化器132確定所達(dá)成的SLA小于目標(biāo)SLA(決策206,“SLA低于目標(biāo)”分支),則配置優(yōu)化器132將代理添加到配置時(shí)間表中,并反復(fù)模擬,直到所達(dá)成的SLA等于或高于目標(biāo)SLA(步驟208)。如果配置優(yōu)化器132確定所達(dá)成的SLA滿足目標(biāo)SLA(決策206,“SLA等于目標(biāo)”分支),則配置優(yōu)化器132基于當(dāng)前的模擬迭代,確定目標(biāo)配置數(shù)據(jù)(步驟212)。如果配置優(yōu)化器132確定所達(dá)成的SLA大于目標(biāo)SLA(決策206,“SLA高于目標(biāo)”分支),則配置優(yōu)化器132從配置時(shí)間表中移除代理器,并反復(fù)模擬,直到所達(dá)成的SLA等于或低于目標(biāo)SLA(步驟210)。
[0032]在步驟208中,配置優(yōu)化器132將代理添加到配置時(shí)間表中,并反復(fù)模擬,直到所達(dá)成的SLA等于或高于目標(biāo)SLA。換句話說,配置優(yōu)化器132執(zhí)行將代理添加到配置時(shí)間表中、執(zhí)行模擬的附加迭代、將附加迭代的所達(dá)成的SLA與目標(biāo)SLA進(jìn)行比較這三者的一次或多次重復(fù)。配置優(yōu)化器132以這種方式繼續(xù),直到所達(dá)成的SLA滿足目標(biāo)SLA或者所達(dá)成的SLA高于目標(biāo)SLA。配置優(yōu)化器132將代理添加到配置時(shí)間表的具有最低性能的時(shí)間段中。在一個(gè)實(shí)施例中,配置優(yōu)化器132基于相對于配置時(shí)間表的其它時(shí)間段具有最低SLA的時(shí)間段,識別具有最低性能的時(shí)間段。在兩個(gè)或更多個(gè)時(shí)間段并列具有最低SLA的情況下,具有最低性能的時(shí)間段是具有最高利用率的兩個(gè)或更多個(gè)并列的時(shí)間段的時(shí)間段。
[0033]在步驟210中,配置優(yōu)化器132從配置時(shí)間表中移除代理,并反復(fù)模擬,直到所達(dá)成的SLA等于或低于目標(biāo)SLA。換句話說,配置優(yōu)化器132執(zhí)行從配置時(shí)間表中移除代理、執(zhí)行模擬的附加迭代、將附加迭代的所達(dá)成的SLA與目標(biāo)SLA進(jìn)行比較這三者的一次或多次重復(fù)。配置優(yōu)化器132以這種方式繼續(xù),直到所達(dá)成的SLA滿足SLA目標(biāo)或者所達(dá)成的SLA低于目標(biāo)SLA。配置優(yōu)化器132從配置時(shí)間表的具有最高性能的時(shí)間段中移除代理器。在一個(gè)實(shí)施例中,配置優(yōu)化器132基于相對于配置時(shí)間表的其它時(shí)間段具有最高SLA的時(shí)間段,識別具有最高性能的時(shí)間段。在兩個(gè)或更多個(gè)時(shí)間段并列具有最高SLA的情況下,具有最高性能的時(shí)間段是具有最低利用率的兩個(gè)或更多個(gè)并列的時(shí)間段的時(shí)間段。
[0034]在步驟212中,配置優(yōu)化器132基于當(dāng)前的迭代確定目標(biāo)配置時(shí)間表。配置優(yōu)化器132基于模擬的當(dāng)前(即最新)迭代的配置時(shí)間表,確定目標(biāo)配置時(shí)間表。當(dāng)前迭代的配置時(shí)間表反映在步驟208或步驟210的最新重復(fù)期間進(jìn)行的調(diào)整。
[0035]在決策214中,配置優(yōu)化器132確定目標(biāo)SLA是否被滿足。如果配置優(yōu)化器132確定目標(biāo)SLA被滿足(決策214,“是”分支),則配置優(yōu)化器132基于模擬的當(dāng)前迭代,確定目標(biāo)配置時(shí)間表(步驟212)。如果配置優(yōu)化器132確定目標(biāo)SLA沒有被滿足(決策214,“否”分支),則配置優(yōu)化器132基于模擬的前一次迭代確定目標(biāo)配置時(shí)間表(步驟216)。
[0036]在步驟216中,配置優(yōu)化器132基于模擬的前一次迭代而確定目標(biāo)配置時(shí)間表。配置優(yōu)化器132基于模擬的前一次迭代的配置時(shí)間表來確定目標(biāo)配置時(shí)間表。前一次迭代的配置時(shí)間表是沒有由步驟208或步驟210的最新重復(fù)對配置時(shí)間表進(jìn)行的變化的配置時(shí)間表。
[0037]圖3是根據(jù)本公開的實(shí)施例的描繪用于在圖1的計(jì)算環(huán)境內(nèi)分配所接收的事件的操作的流程圖。例如,圖3是描繪在計(jì)算環(huán)境100內(nèi)的服務(wù)器130上的事件分配器134的操作300的流程圖。
[0038]在步驟302中,事件分配器134接收事件。事件是由數(shù)據(jù)庫136的事件數(shù)據(jù)標(biāo)識的多個(gè)事件中的一個(gè)。該事件具有到達(dá)時(shí)間、事件類型和一個(gè)或多個(gè)要求。在一個(gè)實(shí)施例中,事件分配器134從配置優(yōu)化器132接收事件。例如,配置優(yōu)化器132在模擬內(nèi)在與事件的到達(dá)時(shí)間對應(yīng)的時(shí)間向事件分配器134發(fā)布事件。
[0039]在步驟304中,事件分配器134確定事件類型。在一個(gè)實(shí)施例中,事件分配器134確定事件要求橋接呼叫。在另一個(gè)實(shí)施例中,事件分配器134基于事件的要求,確定代理將需要什么技能集合以便支持事件。例如,事件分配器134確定事件要求精通特定語言和特定技術(shù)。
[0040]在決策306中,事件分配器134確定所有代理是否在其多任務(wù)處理閾值處工作。如果分配給代理的事件的數(shù)量等于該代理的多任務(wù)處理閾值,則事件分配器134確定該代理正在其多任務(wù)處理閾值處工作,在這種情況下,該代理不可用并且不能接受新事件。如果代理的所分配的事件的數(shù)量小于該代理的多任務(wù)處理閾值,則該代理被認(rèn)為是可用的。如果至少一個(gè)代理是可用的,則事件分配器134確定不是所有代理都在其多任務(wù)處理閾值處工作(決策306,“否”分支)。如果所有代理都在其多任務(wù)處理閾值處工作(決策306,“是”分支),則事件分配器134將事件放置在隊(duì)列中(步驟314)。如果所有代理器沒有在其多任務(wù)處理閾值處工作(決策306,“否”分支),則事件分配器134生成支持事件所需要的一組具有主技能的可用代理和一組具有輔助技能的可用代理器(步驟308)。
[0041]在步驟308中,事件分配器134生成一組或多組可用代理器,其具有滿足事件的要求的技能(例如,主技能或輔助技能)。每組可用代理器包括零個(gè)或多個(gè)代理。事件分配器通過將每個(gè)可用代理的主技能和輔助技能與事件的要求進(jìn)行比較來生成每一組。如果事件的每個(gè)要求匹配代理的技能,則代理的技能滿足事件的要求。具有滿足事件的要求的技能的可用代理也可以具有不匹配事件的要求的技能。例如,事件可要求精通一種語言,具有滿足該事件的要求的技能的代理可精通該語言和第二語言。事件分配器134對每個(gè)技能水平生成一組可用代理??捎么硎桥c代理的最低匹配技能的技能水平對應(yīng)的一組可用代理的成員。例如,事件分配器134生成用于主技能水平的第一組可用代理和用于輔助技能水平的第二組可用代理。第一組中的代理具有滿足事件的要求的主技能。第二組中的代理器具有滿足事件的要求的主技能或輔助技能。
[0042]在步驟310中,事件分配器134基于業(yè)務(wù)要求來過濾多組可用代理。在一個(gè)實(shí)施例中,事件分配器134基于由數(shù)據(jù)庫136的業(yè)務(wù)要求描述的約束來過濾組。一組中不滿足約束的代理從該組中移除。例如,業(yè)務(wù)要求可以描述代理可處理最多一個(gè)橋接呼叫的約束。在這種情況下,具有主技能的一組可用代理中滿足事件的要求但正在處理橋接呼叫的代理從該組可用代理中濾除(即,移除)。
[0043]在決策312中,事件分配器134確定這些組可用代理是否為空。如果某組中代理的數(shù)量是零,則事件分配器134確定該組為空。如果事件分配器134確定所有組都為空(決策312,“是”分支),則事件分配器134將事件放置在隊(duì)列中(步驟314)。如果事件分配器134確定這些組不為空(決策312,“否”分支),則事件分配器將事件分配給代理(步驟316)。
[0044]在步驟314中,事件分配器134將事件放置在隊(duì)列中。隊(duì)列包括已被接收但是沒有具有滿足事件的要求的技能的代理可用的零個(gè)或多個(gè)事件。隊(duì)列中的事件可以在以后的時(shí)間分配給代理,如結(jié)合圖4更詳細(xì)解釋的。在某些實(shí)施例中,性能結(jié)果包括ΤΤ0。在這種情況下,事件的等待時(shí)間是事件在隊(duì)列中花費(fèi)的總時(shí)間的量度。例如,等待時(shí)間是從事件分配器134將事件放置在隊(duì)列中開始直到事件分配器134將事件分配給代理器的時(shí)間所經(jīng)過的時(shí)間。
[0045]在步驟316中,事件分配器134分配代理以處理事件。在一個(gè)實(shí)施例中,事件分配器134基于每組可用代理的技能水平來分配代理。例如,事件分配器134從相對于不為空的那些組可用代理具有最高技能水平的一組可用代理中分配代理。在某些實(shí)施例中,事件分配器134進(jìn)一步基于改進(jìn)LIAR策略分配代理。改進(jìn)LIAR策略根據(jù)哪個(gè)事件分配器134分配代理來規(guī)定一組優(yōu)先權(quán)。改進(jìn)LIAR策略將較低數(shù)量的分配事件和較高的技能水平優(yōu)先化。進(jìn)一步地,在空閑(即,具有零分配事件)的代理中,改進(jìn)LIAR策略將已經(jīng)度過最長時(shí)間空閑的代理的分配優(yōu)先化。更進(jìn)一步地,在沒有空閑(即,具有一個(gè)或多個(gè)分配事件)的代理中,改進(jìn)LIAR策略將自代理被分配了事件起經(jīng)過更長時(shí)間的代理的分配優(yōu)先化。在一個(gè)實(shí)施例中,事件分配器134應(yīng)用改進(jìn)LIAR策略。事件分配器134在分配具有更多分配事件的代理之前,分配具有更少分配事件的代理,而不管每個(gè)代理的技能水平。在具有相同數(shù)量的分配事件的代理中,事件分配器134在分配具有較低技能水平的代理之前,分配具有較高技能水平的代理。在具有相同數(shù)量的分配事件和相同的技能水平的代理中,事件分配器134在分配具有較短空閑時(shí)間的代理之前,分配具有較長空閑時(shí)間的代理(或者相對于自代理被分配了事件起具有較短時(shí)間的代理,分配自代理被分配了事件起具有較長時(shí)間的代理)。
[0046]圖4是根據(jù)本公開的實(shí)施例的描繪用于在圖1的計(jì)算環(huán)境內(nèi)分配事件的操作的流程圖。例如,圖4是描繪在計(jì)算環(huán)境100內(nèi)的服務(wù)器130上的事件分配器134的操作400的流程圖。
[0047]在步驟402中,事件分配器134識別完成了事件的代理。在一個(gè)實(shí)施例中,事件分配器134(或可替代地,配置優(yōu)化器132)確定已完成事件的性能結(jié)果。在這種情況下,性能結(jié)果被記錄(例如到數(shù)據(jù)庫136)。進(jìn)一步地,已完成事件沒有從該代理分配。
[0048]在決策404中,事件分配器134確定隊(duì)列中的任何事件是否匹配該代理的技能集合。在某些實(shí)施例中,事件分配器134對于代理的每個(gè)技能集合維持技能集合隊(duì)列。例如,事件分配器對于代理的主技能集合維持主隊(duì)列,對于代理的輔助技能集合維持輔助隊(duì)列。每個(gè)技能集合隊(duì)列包括匹配代理的對應(yīng)技能集合的在步驟314中放置在隊(duì)列中的那些事件。在這種情況下,事件分配器134基于在代理的技能集合隊(duì)列中是否存在任何事件,確定隊(duì)列中的任何事件是否匹配代理的技能集合。在其它實(shí)施例中,事件分配器134通過將代理的技能與在步驟314中放置在隊(duì)列中的事件的要求進(jìn)行比較,確定隊(duì)列中的任何事件是否匹配代理的技能集合。事件分配器134識別代理對其有資格的零個(gè)或多個(gè)事件。如果事件分配器134在排隊(duì)的事件中識別代理對其有資格的零個(gè)事件,則事件分配器134確定在隊(duì)列中沒有匹配代理的技能集合的事件(決策404,“否”分支)。如果事件分配器134確定在隊(duì)列中沒有匹配代理的技能集合的事件(決策404,“否”分支),則事件分配器確定代理是否正在支持任何事件(決策408)。如果事件分配器134確定在隊(duì)列中有至少一個(gè)匹配代理的技能集合的事件(決策404,“是”分支),則事件分配器134確定代理是否與至少一個(gè)所識別的事件兼容(決策406)。
[0049]在決策406中,事件分配器134確定代理是否與在決策404中識別的至少一個(gè)事件兼容。事件分配器134基于數(shù)據(jù)庫136的業(yè)務(wù)約束,確定代理是否與事件兼容。例如,業(yè)務(wù)約束可將要求語音通信的事件的數(shù)量限制為一個(gè)并行事件。在該示例中,事件分配器134基于代理當(dāng)前是否正處理另一個(gè)要求語音通信的事件,確定代理是否與事件兼容。如果事件分配器134確定代理與至少一個(gè)所識別的事件不兼容(決策406,“否”分支),則事件分配器134確定代理是否正支持任何事件(決策408)。如果事件分配器134確定存在代理滿足業(yè)務(wù)約束的至少一個(gè)所識別的事件(決策406,“是”分支),則事件分配器134將兼容事件分配給代理(步驟414)。
[0050]在決策408中,事件分配器134確定代理器是否正支持任何事件。如果事件分配器134確定代理正支持至少一個(gè)事件(決策408,“是”分支),則事件分配器134更新代理的狀態(tài)(步驟412)。如果事件分配器134確定代理沒有在支持至少一個(gè)事件(決策408,“否”分支),則事件分配器134將代理識別為空閑(步驟410)。
[0051]在步驟412中,事件分配器134更新代理的狀態(tài)。在一個(gè)實(shí)施例中,事件分配器134識別出代理正在支持比該代理在完成事件之前支持的更少的事件。換句話說,事件分配器134遞減由代理并行處理的事件的計(jì)數(shù)。
[0052]在步驟414中,事件分配器134將事件分配給代理。如果事件分配器134識別了滿足兼容性要求的超過一個(gè)的事件(如在決策406中分析的),則事件分配器134分配在代理對其具有最高所需技能的那些事件中已經(jīng)在隊(duì)列中有最長時(shí)間量的事件。
[0053]圖5是根據(jù)本公開的實(shí)施例的計(jì)算裝置(一般標(biāo)記為500)的組件的框圖。在一個(gè)實(shí)施例中,計(jì)算裝置500代表計(jì)算環(huán)境100內(nèi)的服務(wù)器130,在這種情況下,服務(wù)器130包括配置優(yōu)化器132、事件分配器134和數(shù)據(jù)庫136。
[0054]應(yīng)當(dāng)知道,圖5只提供一個(gè)實(shí)現(xiàn)的圖示,并不意味著對于其中可實(shí)施不同實(shí)施例的環(huán)境的任何限制??梢詫λ枥L的環(huán)境進(jìn)行許多修改。
[0055]計(jì)算機(jī)系統(tǒng)500包括處理器502、緩存器506、存儲器504、永久存儲器510、輸入/輸出(I/o)接口 512、通信單元514和通信結(jié)構(gòu)508。通信結(jié)構(gòu)508提供緩存器506、存儲器504、永久存儲器510、通信單元514和輸入/輸出(I/O)接口 512之間的通信。通信結(jié)構(gòu)508可用任何被設(shè)計(jì)成在處理器(諸如微處理器、通信和網(wǎng)絡(luò)處理器等)、系統(tǒng)存儲器、外圍裝置和系統(tǒng)內(nèi)任何其它硬件組件之間傳遞數(shù)據(jù)和/或控制信息的架構(gòu)實(shí)現(xiàn)。例如,通信結(jié)構(gòu)508可用一個(gè)或多個(gè)總線或交叉開關(guān)實(shí)現(xiàn)。
[0056]存儲器504和永久存儲器510是計(jì)算機(jī)可讀存儲介質(zhì)。在本實(shí)施例中,存儲器504包括隨機(jī)存取存儲器(RAM)。一般地,存儲器504可包括任何合適的易失性或非易失性計(jì)算機(jī)可讀存儲介質(zhì)。緩存器506是快速存儲器,其通過保持存儲器504最近訪問的數(shù)據(jù)和在最近訪問的數(shù)據(jù)附近的數(shù)據(jù)來增強(qiáng)處理器502的性能。
[0057]用于實(shí)現(xiàn)本發(fā)明的實(shí)施例的程序指令和數(shù)據(jù)可被存儲在永久存儲器510和存儲器504中,以用于經(jīng)由緩存器506由一個(gè)或多個(gè)處理器502執(zhí)行。在實(shí)施例中,永久存儲器510包括磁性硬盤驅(qū)動器??商娲鼗蛘叱舜判杂脖P驅(qū)動器之外,永久存儲器510還可包括固態(tài)硬盤驅(qū)動器、半導(dǎo)體存儲裝置、只讀存儲器(R0M)、可擦除可編程只讀存儲器(EPROM)、閃速存儲器、或者能夠存儲程序指令或數(shù)字信息的任何其它計(jì)算機(jī)可讀存儲介質(zhì)。
[0058]由永久存儲器510使用的介質(zhì)也可以是可移除的。例如,可移除的硬盤驅(qū)動器可用于永久存儲器510。其它示例包括光盤和磁盤、拇指驅(qū)動器和智能卡,其被插入驅(qū)動器以用于轉(zhuǎn)移到也是永久存儲器510的一部分的另一個(gè)計(jì)算機(jī)可讀存儲介質(zhì)。
[0059]在這些示例中,通信單元514提供與其它數(shù)據(jù)處理系統(tǒng)或裝置的通信。在這些示例中,通信單元514包括一個(gè)或多個(gè)網(wǎng)絡(luò)接口卡。通信單元514可以通過使用物理通信鏈路和無線通信鏈路的任一者或兩者來提供通信。用于實(shí)現(xiàn)本發(fā)明的實(shí)施例的程序指令和數(shù)據(jù)可以通過通信單元514下載到永久存儲器510。
[0060]I/O接口 512允許與可連接到每個(gè)計(jì)算機(jī)系統(tǒng)的其它裝置輸入和輸出數(shù)據(jù)。例如,I/O接口 512可以提供與外部裝置516的連接,諸如鍵盤、小鍵盤、觸摸屏和/或一些其它合適的輸入裝置。外部裝置516也可包括便攜式計(jì)算機(jī)可讀存儲介質(zhì),諸如拇指驅(qū)動器、便攜式光盤或磁盤和存儲卡。用于實(shí)現(xiàn)本發(fā)明的實(shí)施例的軟件和數(shù)據(jù)可以存儲在這種便攜式計(jì)算機(jī)可讀存儲介質(zhì)上,并可以經(jīng)由I/O接口 512加載到永久存儲器510中。I/O接口 512也連接到顯示器518。
[0061]顯示器518提供向用戶顯示或呈現(xiàn)數(shù)據(jù)的機(jī)制,并且可以是例如計(jì)算機(jī)監(jiān)視器。
[0062]本發(fā)明可以是系統(tǒng)、方法和/或計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)程序產(chǎn)品可以包括計(jì)算機(jī)可讀存儲介質(zhì),其上載有用于使處理器實(shí)現(xiàn)本發(fā)明的各個(gè)方面的計(jì)算機(jī)可讀程序指令。
[0063]計(jì)算機(jī)可讀存儲介質(zhì)可以是可以保持和存儲由指令執(zhí)行裝置使用的指令的有形裝置。計(jì)算機(jī)可讀存儲介質(zhì)例如可以是一一但不限于一一電存儲裝置、磁存儲裝置、光存儲裝置、電磁存儲裝置、半導(dǎo)體存儲裝置或者上述的任意合適的組合。計(jì)算機(jī)可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:便攜式計(jì)算機(jī)盤、硬盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPROM或閃存)、靜態(tài)隨機(jī)存取存儲器(SRAM)、便攜式壓縮盤只讀存儲器(CD-ROM)、數(shù)字多功能盤(DVD)、記憶棒、軟盤、機(jī)械編碼裝置、例如其上存儲有指令的打孔卡或凹槽內(nèi)凸起結(jié)構(gòu)、以及上述的任意合適的組合。這里所使用的計(jì)算機(jī)可讀存儲介質(zhì)不被解釋為瞬時(shí)信號本身,諸如無線電波或者其他自由傳播的電磁波、通過波導(dǎo)或其他傳輸媒介傳播的電磁波(例如,通過光纖電纜的光脈沖)、或者通過電線傳輸?shù)碾娦盘枴?br>[0064]這里所描述的計(jì)算機(jī)可讀程序指令可以從計(jì)算機(jī)可讀存儲介質(zhì)下載到各個(gè)計(jì)算/處理裝置,或者通過網(wǎng)絡(luò)、例如因特網(wǎng)、局域網(wǎng)、廣域網(wǎng)和/或無線網(wǎng)下載到外部計(jì)算機(jī)或外部存儲裝置。網(wǎng)絡(luò)可以包括銅傳輸電纜、光纖傳輸、無線傳輸、路由器、防火墻、交換機(jī)、網(wǎng)關(guān)計(jì)算機(jī)和/或邊緣服務(wù)器。每個(gè)計(jì)算/處理裝置中的網(wǎng)絡(luò)適配卡或者網(wǎng)絡(luò)接口從網(wǎng)絡(luò)接收計(jì)算機(jī)可讀程序指令,并轉(zhuǎn)發(fā)該計(jì)算機(jī)可讀程序指令,以供存儲在各個(gè)計(jì)算/處理裝置中的計(jì)算機(jī)可讀存儲介質(zhì)中。
[0065]用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序指令可以是匯編指令、指令集架構(gòu)(ISA)指令、機(jī)器指令、機(jī)器相關(guān)指令、微代碼、固件指令、狀態(tài)設(shè)置數(shù)據(jù)、或者以一種或多種編程語言的任意組合編寫的源代碼或目標(biāo)代碼,所述編程語言包括面向?qū)ο蟮木幊陶Z言一諸如Smalltalk、C++等,以及常規(guī)的過程式編程語言一諸如“C”語言或類似的編程語言。計(jì)算機(jī)可讀程序指令可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過任意種類的網(wǎng)絡(luò)一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。在一些實(shí)施例中,通過利用計(jì)算機(jī)可讀程序指令的狀態(tài)信息來個(gè)性化定制電子電路,例如可編程邏輯電路、現(xiàn)場可編程門陣列(FPGA)或可編程邏輯陣列(PLA),該電子電路可以執(zhí)行計(jì)算機(jī)可讀程序指令,從而實(shí)現(xiàn)本發(fā)明的各個(gè)方面。
[0066]這里參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述了本發(fā)明的各個(gè)方面。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)可讀程序指令實(shí)現(xiàn)。
[0067]這些計(jì)算機(jī)可讀程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理設(shè)備的處理器,從而生產(chǎn)出一種機(jī)器,使得這些指令在通過計(jì)算機(jī)或其它可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行時(shí),產(chǎn)生了實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動作的設(shè)備。也可以把這些計(jì)算機(jī)可讀程序指令存儲在計(jì)算機(jī)可讀存儲介質(zhì)中,這些指令使得計(jì)算機(jī)、可編程數(shù)據(jù)處理設(shè)備和/或其他裝置以特定方式工作,從而,存儲有指令的計(jì)算機(jī)可讀介質(zhì)則包括一個(gè)制造品,其包括實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動作的各個(gè)方面的指令。
[0068]也可以把計(jì)算機(jī)可讀程序指令加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理設(shè)備、或其它裝置上,使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理設(shè)備或其它裝置上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過程,從而使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理設(shè)備、或其它裝置上執(zhí)行的指令實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動作。
[0069]附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段或指令的一部分,所述模塊、程序段或指令的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來實(shí)現(xiàn)。
[0070]本發(fā)明的各種實(shí)施例的描述已經(jīng)呈現(xiàn)以用于說明的目的,但并不旨在窮舉或限制于所公開的實(shí)施例。對于本領(lǐng)域的技術(shù)人員來說,在不脫離本發(fā)明的范圍和精神的情況下,許多修改和變型是顯而易見的。在此使用的術(shù)語被選擇以最好地解釋實(shí)施例的原理、實(shí)際應(yīng)用或相對于現(xiàn)有技術(shù)的技術(shù)改進(jìn),或者使本領(lǐng)域的技術(shù)人員能夠理解在此公開的實(shí)施例。
【主權(quán)項(xiàng)】
1.一種用于優(yōu)化多任務(wù)處理服務(wù)器的分配的方法,包括: 由一個(gè)或多個(gè)處理器接收標(biāo)識多個(gè)時(shí)間段的時(shí)間表,其中,所述時(shí)間表將多個(gè)服務(wù)器中的每個(gè)服務(wù)器與至少一個(gè)時(shí)間段相關(guān)聯(lián); 由一個(gè)或多個(gè)處理器確定所述多個(gè)服務(wù)器中的每個(gè)服務(wù)器的一個(gè)或多個(gè)性能特征,其中,所述一個(gè)或多個(gè)性能特征包括多任務(wù)處理閾值; 由一個(gè)或多個(gè)處理器通過以下操作來執(zhí)行所述多個(gè)服務(wù)器的模擬以確定所述模擬的服務(wù)水平: 由一個(gè)或多個(gè)處理器接收標(biāo)識多個(gè)事件的工作負(fù)載; 由一個(gè)或多個(gè)處理器將所述多個(gè)事件中的每個(gè)事件分配給所述多個(gè)服務(wù)器中的服務(wù)器; 由一個(gè)或多個(gè)處理器確定所述多個(gè)時(shí)間段中的每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo);以及 由一個(gè)或多個(gè)處理器至少部分地基于每個(gè)時(shí)間段的所述一個(gè)或多個(gè)性能指標(biāo)來確定所述模擬的服務(wù)水平;以及 由一個(gè)或多個(gè)處理器基于所述服務(wù)水平和目標(biāo)服務(wù)水平中的至少一個(gè)來優(yōu)化所述時(shí)間表。2.根據(jù)權(quán)利要求1所述的方法,其中,分配每個(gè)事件包括: 由一個(gè)或多個(gè)處理器接收具有事件類型和一組要求中的至少一個(gè)的事件; 由一個(gè)或多個(gè)處理器確定至少一個(gè)服務(wù)器沒有滿負(fù)荷工作,并且作為響應(yīng),由一個(gè)或多個(gè)處理器生成具有匹配所述事件的所述一組要求的技能集合的至少一組可用服務(wù)器;以及 由一個(gè)或多個(gè)處理器過濾所述至少一組可用服務(wù)器中的每一組以用于兼容性約束。3.根據(jù)權(quán)利要求2所述的方法,其中,所述兼容性約束指定對允許服務(wù)器同時(shí)處理的特定事件類型的事件的數(shù)量的限制。4.根據(jù)權(quán)利要求2所述的方法,還包括: 由一個(gè)或多個(gè)處理器確定所述至少一組可用服務(wù)器不為空,并且作為響應(yīng),由一個(gè)或多個(gè)處理器將所述事件分配給所述至少一組可用服務(wù)器中的服務(wù)器。5.根據(jù)權(quán)利要求4所述的方法,其中,至少部分地基于改進(jìn)最長空閑代理路由策略、所述至少一組可用服務(wù)器中的每個(gè)服務(wù)器的每個(gè)技能集合的水平和所述至少一組可用服務(wù)器中的每個(gè)服務(wù)器的分配事件的數(shù)量中的至少一個(gè),選擇被分配所述事件的服務(wù)器。6.根據(jù)權(quán)利要求1所述的方法,還包括: 由一個(gè)或多個(gè)處理器基于標(biāo)識由所述多個(gè)服務(wù)器中的第一服務(wù)器處理的并行事件的數(shù)量的歷史性能數(shù)據(jù),確定所述第一服務(wù)器的所述多任務(wù)處理閾值;以及 由一個(gè)或多個(gè)處理器基于在所述模擬期間由所述第一服務(wù)器處理的并行事件的數(shù)量,更新所述第一服務(wù)器的所述多任務(wù)處理閾值。7.根據(jù)權(quán)利要求1所述的方法,其中,優(yōu)化所述時(shí)間表包括: 由一個(gè)或多個(gè)處理器確定所述服務(wù)水平大于所述目標(biāo)服務(wù)水平,并且作為響應(yīng),由一個(gè)或多個(gè)處理器通過以下操作從所述時(shí)間表的第一時(shí)間段中移除第一服務(wù)器: 由一個(gè)或多個(gè)處理器識別所述多個(gè)時(shí)間段中的第一時(shí)間段,其中,所述第一時(shí)間段所具有的服務(wù)水平大于所述多個(gè)時(shí)間段的每個(gè)其它時(shí)間段的服務(wù)水平;以及 由一個(gè)或多個(gè)處理器通過移除所述第一服務(wù)器與所述第一時(shí)間段之間的關(guān)聯(lián)來修改所述時(shí)間表;以及 由一個(gè)或多個(gè)處理器執(zhí)行所述模擬的至少一次附加迭代,以確定每次附加迭代的服務(wù)水平。8.根據(jù)權(quán)利要求1所述的方法,其中,優(yōu)化所述時(shí)間表包括: 由一個(gè)或多個(gè)處理器確定所述服務(wù)水平小于所述目標(biāo)服務(wù)水平,并且作為響應(yīng),由一個(gè)或多個(gè)處理器通過以下操作將第一服務(wù)器添加到所述時(shí)間表的第一時(shí)間段: 由一個(gè)或多個(gè)處理器識別所述多個(gè)時(shí)間段中的第一時(shí)間段,其中,所述第一時(shí)間段所具有的服務(wù)水平小于所述多個(gè)時(shí)間段中的每個(gè)其它時(shí)間段的服務(wù)水平;以及 由一個(gè)或多個(gè)處理器通過添加所述第一服務(wù)器與所述第一時(shí)間段之間的關(guān)聯(lián)來修改所述時(shí)間表;以及 由一個(gè)或多個(gè)處理器執(zhí)行所述模擬的至少一次附加迭代,以確定每次附加迭代的服務(wù)水平。9.一種用于優(yōu)化多任務(wù)處理服務(wù)器的分配的計(jì)算機(jī)系統(tǒng),包括: 一個(gè)或多個(gè)計(jì)算機(jī)處理器; 一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲介質(zhì); 在所述計(jì)算機(jī)可讀存儲介質(zhì)上存儲的程序指令,以由所述一個(gè)或多個(gè)處理器中的至少一個(gè)執(zhí)行,所述程序指令包括: 接收標(biāo)識多個(gè)時(shí)間段的時(shí)間表的程序指令,其中,所述時(shí)間表將多個(gè)服務(wù)器中的每個(gè)服務(wù)器與至少一個(gè)時(shí)間段相關(guān)聯(lián); 確定所述多個(gè)服務(wù)器中的每個(gè)服務(wù)器的一個(gè)或多個(gè)性能特征的程序指令,其中,所述一個(gè)或多個(gè)性能特征包括多任務(wù)處理閾值; 執(zhí)行所述多個(gè)服務(wù)器的模擬以確定所述模擬的服務(wù)水平的程序指令,其包括: 接收標(biāo)識多個(gè)事件的工作負(fù)載的程序指令; 將所述多個(gè)事件中的每個(gè)事件分配給所述多個(gè)服務(wù)器中的服務(wù)器的程序指令; 確定所述多個(gè)時(shí)間段中的每個(gè)時(shí)間段的一個(gè)或多個(gè)性能指標(biāo)的程序指令;以及至少部分地基于每個(gè)時(shí)間段的所述一個(gè)或多個(gè)性能指標(biāo),確定所述模擬的服務(wù)水平的程序指令;以及 至少部分地基于所述服務(wù)水平和目標(biāo)服務(wù)水平中的至少一個(gè),優(yōu)化所述時(shí)間表的程序指令。10.根據(jù)權(quán)利要求9所述的計(jì)算機(jī)系統(tǒng),其中,分配每個(gè)事件的程序指令包括: 接收具有事件類型和一組要求中的至少一個(gè)的事件的程序指令; 確定所述至少一個(gè)服務(wù)器沒有滿負(fù)荷工作,并且作為響應(yīng),生成具有匹配所述事件的所述一組要求的技能集合的至少一組可用服務(wù)器的程序指令;以及過濾所述至少一組可用服務(wù)器中的每一組,以用于兼容性約束。11.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),其中,所述兼容性約束指定對允許服務(wù)器同時(shí)處理的特定事件類型的事件的數(shù)量的限制。12.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),其中,所述程序指令還包括: 確定所述至少一組可用服務(wù)器不為空,并且作為響應(yīng),將所述事件分配給所述至少一組可用服務(wù)器中的服務(wù)器的程序指令。13.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),其中,至少部分地基于改進(jìn)最長空閑代理路由策略、所述至少一組可用服務(wù)器中的每個(gè)服務(wù)器的每個(gè)技能集合的水平和所述至少一組可用服務(wù)器中的每個(gè)服務(wù)器的分配事件的數(shù)量中的至少一個(gè),選擇被分配所述事件的服務(wù)器。14.根據(jù)權(quán)利要求9所述的計(jì)算機(jī)系統(tǒng),其中,所述程序指令還包括: 基于標(biāo)識由所述多個(gè)服務(wù)器中的第一服務(wù)器處理的并行事件的數(shù)量的歷史性能數(shù)據(jù),確定所述第一服務(wù)器的所述多任務(wù)處理閾值的程序指令;以及 基于在所述模擬期間由所述第一服務(wù)器處理的并行事件的數(shù)量,更新所述第一服務(wù)器的所述多任務(wù)處理閾值的程序指令。
【文檔編號】G06F9/50GK105988879SQ201610153313
【公開日】2016年10月5日
【申請日】2016年3月17日
【發(fā)明人】G·B·達(dá)斯古普塔, S·A·蒙達(dá)爾, R·R·辛迪加塔, R·B·華萊士
【申請人】國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
阳江市| 柳州市| 江山市| 浪卡子县| 阿坝县| 留坝县| 时尚| 恩平市| 临夏县| 延寿县| 理塘县| 鹤庆县| 宝清县| 沁水县| 县级市| 健康| 抚宁县| SHOW| 禄劝| 土默特右旗| 全椒县| 郎溪县| 苏尼特右旗| 丹东市| 温泉县| 建始县| 三明市| 东乌珠穆沁旗| 体育| 济宁市| 天峨县| 安吉县| 东乡族自治县| 黄平县| 依兰县| 顺昌县| 疏附县| 含山县| 九龙城区| 商水县| 轮台县|