亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

通過遍歷配置空間來自主確定配置設置的制作方法

文檔序號:6480609閱讀:140來源:國知局
專利名稱:通過遍歷配置空間來自主確定配置設置的制作方法
技術領域
本發(fā)明一般涉及軟件系統(tǒng)領域,并尤其涉及確定軟件系統(tǒng)的最優(yōu)配置設置。
背景技術
如今,大規(guī)模商業(yè)應用的發(fā)展必須處理許多問題。這些問題中有并行性管理、事務管理、持久性、安全性、表示、業(yè)務邏輯。所有這些問題必須在應用、硬件/軟件拓樸和工作負荷的框架內(nèi)解決。此框架內(nèi)的每個軟件組件可能具有一些必須正確設置以便系統(tǒng)正確工作的配置參數(shù)。不正確的配置會導致應用發(fā)生故障或性能降低,這兩者對組織都是代價高昂的。
諸如Sun Microsystem公司開發(fā)的JavaTM2平臺、企業(yè)版(J2EETM)的框架被設計為通過支持問題的分離來簡化對系統(tǒng)的配置過程。應用開發(fā)人員可以主要集中于實現(xiàn)應用的業(yè)務邏輯方面;該應用被部署于其上的應用服務器處理并行性、事務以及持久性管理的大部分復雜性。
在此框架內(nèi),部署者,即配置應用服務器以正確和有效地管理并行性、事務和持久性的個人,起著核心作用。企業(yè)系統(tǒng)非常復雜,負責配置這種系統(tǒng)的部署者必須處理以下事情1)應用本身與數(shù)據(jù)之間的交互會影響應用服務器的配置,而部署者通常不具有足夠的文檔以處理此問題;2)該應用與之交互的硬件和軟件系統(tǒng)會嚴重影響其部署;3)該應用的工作負荷會影響應用服務器的配置;4)最佳實踐指南和基于規(guī)則的簡檔是試探法,其不可能覆蓋應用、硬件/軟件拓樸和工作負荷的全部空間,并且它們本身可能已基于錯誤的前提;以及5)基于配置的問題通常難以跟蹤并且跟蹤比較昂貴,因為經(jīng)常的情況是,當應用發(fā)生故障時假設是應用本身有缺陷,并消耗資源來查找被認為是程序錯誤的故障原因。
單純的配置空間大小和復雜性就使其非常難以管理。當如通常的情況那樣,設置配置的部署者不是設計該系統(tǒng)的同一人,并且不是該系統(tǒng)的用戶時,這種情況會更復雜。通常,部署者是在配置遺留系統(tǒng)。由于沒有可隨意使用的適當?shù)墓ぞ撸渴鹫弑仨毷褂媒?jīng)驗法則、直覺以及試錯的混合來配置應用服務器。對于較小的系統(tǒng),控制理論提供了適當?shù)姆椒ㄒ酝ㄟ^合適的軟件模型來確定配置值,但是對于實際見到的大的系統(tǒng)拓樸例如企業(yè)系統(tǒng),難以得出該系統(tǒng)的合適的模型。即使可開發(fā)出模型,該模型也極不可能擴展到其他應用部署,因此需要一種配置大系統(tǒng)的方法。
參照圖1,其示出根據(jù)現(xiàn)有技術用于應用服務器部署的傳統(tǒng)拓樸的框圖。Web服務器103和105將請求從因特網(wǎng)101指引到應用服務器120和121。應用服務器120和121連接到后端數(shù)據(jù)庫150,企業(yè)數(shù)據(jù)持久存儲在該數(shù)據(jù)庫內(nèi)。
參照圖2,其示出根據(jù)現(xiàn)有技術的基于J2EE的應用服務器的結(jié)構的框圖。用于此系統(tǒng)的應用服務器120通常用Java編寫,因此整個系統(tǒng)在一個或多個Java虛擬機(JVM)260中執(zhí)行。如上所述,J2EE支持各問題的分離;因此應用服務器120分為表示層、業(yè)務邏輯層、以及數(shù)據(jù)層。Web容器230對應于表示層。它管理與Web服務器103的交互。通過Web服務器103將瀏覽器請求路由到Web容器230,在該Web容器230處或者返回靜態(tài)HTML頁,或者啟動Java服務器頁(JSP)或小服務程序的執(zhí)行。該JSP或小服務程序可繼而與業(yè)務邏輯層交互,并最終合成返回給用戶的HTML。Web容器230通過控制一次可執(zhí)行多少個線程來確定小服務程序的并行性。
Enterprise JavaBeans(EJB)容器235對應于業(yè)務邏輯層。EJB容器235管理在服務器120上部署的Enterprise Java Bean的創(chuàng)建和執(zhí)行。此外,它控制EJB的事務處理行為、它們的并行性以及它們的緩存。它還控制EJB與數(shù)據(jù)源240的交互,該數(shù)據(jù)源對應于數(shù)據(jù)層。數(shù)據(jù)源240是數(shù)據(jù)庫的抽象。IT部門在連接池中管理與數(shù)據(jù)庫150的連接以降低創(chuàng)建新連接所涉及的花費。當EJB不再需要與數(shù)據(jù)庫連接時,不是關閉該連接,而是將該連接返回該池以便以后再次使用。此外,數(shù)據(jù)源240保持語句緩存,該語句緩存用于減小處理經(jīng)常執(zhí)行的結(jié)構化查詢語言(SQL)請求的成本。


圖1示出根據(jù)現(xiàn)有技術的傳統(tǒng)的應用服務器配置的拓樸。
圖2示出根據(jù)現(xiàn)有技術的基于J2EE的應用服務器的結(jié)構的表示。
圖3是示出根據(jù)本發(fā)明的方法的流程圖。
圖4是示出根據(jù)本發(fā)明的用于實驗的硬件的圖。
圖5是示出25個隨機配置空間探索運行中的每一個的吞吐量的條形圖。
圖6示出將吞吐量表示為最大數(shù)據(jù)源連接池大小和EJB容器線程池大小之間的差值的函數(shù)的圖。
圖7是示出25個配置空間探索運行中的每一個的平均響應時間的條形圖。
圖8是計算機程序產(chǎn)品的簡化框圖,在該程序產(chǎn)品上可有利地使用本發(fā)明的實施例。
具體實施例方式
簡單地說,根據(jù)被要求保護的發(fā)明,一種為至少一個軟件系統(tǒng)設置配置參數(shù)的方法包括以下步驟a)接收對用于將被最優(yōu)化的至少一個軟件系統(tǒng)的一組配置參數(shù)的標識;b)從預定范圍內(nèi)為每個感興趣的配置參數(shù)選擇一隨機值;c)將每個配置參數(shù)設置為對應的所選擇的隨機值;d)使用所選擇的值運行應用;e)在該應用運行時,收集與該軟件系統(tǒng)有關的性能信息;f)將步驟b)到e)重復選定的次數(shù);以及g)分析收集到的性能信息以確定最優(yōu)的配置參數(shù)。該方法可由運行程序指令以執(zhí)行上述方法步驟的可編程計算機系統(tǒng)執(zhí)行,或由專用裝置例如ASIC(專用集成電路)執(zhí)行。
本文描述一種解決為一軟件系統(tǒng)例如應用服務器或一組互連軟件系統(tǒng)例如圖2所示的包含應用服務器、JVM、數(shù)據(jù)庫和Web服務器的系統(tǒng)確定正確配置的問題的低成本方法。本發(fā)明可用于各種各樣的軟件系統(tǒng),這是因為該方法會自主探索應用的配置空間,并然后分析探索結(jié)果以確定最優(yōu)配置。本方法在用于確定企業(yè)系統(tǒng)的配置時是尤其有益的,對企業(yè)系統(tǒng)目前沒有合適的方法。從值的一合理范圍內(nèi)隨機選擇涉及給定系統(tǒng)的系統(tǒng)配置參數(shù),然后在設置為所選擇的參數(shù)的系統(tǒng)上運行一工作負荷。每個測試運行的結(jié)果被記錄下來以用于隨后的分析。
為了消除應用本身的問題,應用首先應以給定的配置運行多次以確定相對于該配置該應用的行為表現(xiàn)是確定性的。這意味著應用結(jié)果與配置直接相關,而不會受外界因素例如應用中的程序錯誤或網(wǎng)絡問題影響。該應用應以同樣的配置運行足夠的次數(shù)以向了解該系統(tǒng)的人確保其無程序錯誤,以及考慮和消除在試驗自身之外的會影響結(jié)果的因素。假設15次是此初始步驟的合適的運行次數(shù)。應用的行為表現(xiàn)必須相當一致,即對于給定的配置性能沒有表現(xiàn)出大的擺動。預期系統(tǒng)性能中有微小的變化,并且只要它們落在可接受范圍內(nèi)就容忍它們。該范圍可以是由具有該系統(tǒng)的知識的某人確定的最小到最大標準偏差/平均值。當應用滿足此要求時,在不同運行之間性能的變化可被歸因于配置值中的變化的影響。
參照圖3,其示出根據(jù)本發(fā)明的一個實施例的確定應用服務器的最優(yōu)配置設置的過程的流程圖。此過程在步驟301開始,在該步驟為此系統(tǒng)選擇一組被認為將影響此給定系統(tǒng)的性能的配置參數(shù)。選擇的參數(shù)依賴于許多因素,例如系統(tǒng)本身;在該系統(tǒng)上運行的應用;應用與之交互的硬件和軟件系統(tǒng);網(wǎng)絡特性;網(wǎng)絡中的機器的數(shù)量;網(wǎng)絡的拓樸;以及應用的工作負荷。對于企業(yè)系統(tǒng),一部署者可以處理超過50個待設置參數(shù)。為了示出此方法的好處,下面的示例示出了在J2EE框架內(nèi)部署應用時配置應用服務器的過程中所涉及的一些問題。
假設要解決的問題是圖2中所示的應用服務器的最優(yōu)配置。存在許多會影響這種系統(tǒng)的性能的參數(shù),但是為此示例的目的,選擇了表1中所示的以下9個參數(shù)作為最重要的
表1

下一個步驟303涉及為每個參數(shù)選擇一值范圍。所選擇的范圍應代表用于每個給定參數(shù)的由使用、文檔、基于規(guī)則的簡檔和/或最佳實踐指南確定的值的合理范圍。每當可能時,應擴展該范圍以包括在連續(xù)區(qū)的兩端的極端值。應執(zhí)行一致性檢驗以確保最小值小于最大值,并且所選擇的值與涉及的硬件和軟件一致。假設為表1中的9個參數(shù)選擇了下面的范圍
表2

下一步305是從每個配置參數(shù)的范圍內(nèi)隨機選擇一個值。該隨機選擇的值可由系統(tǒng)自身選擇,并優(yōu)選地使用一隨機數(shù)生成器過程。重要的是,該選擇是一盲目選擇,即在數(shù)字選擇中沒有干涉。應指出,隨機值選擇與試錯選擇是不同的。對于隨機選擇,不象對于試錯試驗那樣,沒有預想的給定值將如何影響結(jié)果的期望。對于試錯選擇,用戶在選擇一個值時暗示對結(jié)果的預想的期望,并在結(jié)果顯現(xiàn)時證明該期望是否是正確的。出于以下兩個原因,隨機值選擇對于此方法是重要的1)它允許使用很少的或者不使用用戶交互來進行自動的、自主的試驗;以及2)它消除了敗壞試驗并且會妨礙最優(yōu)配置的選擇的有害的推測。后一個原因是由于系統(tǒng)文檔和最佳實踐指南盡管有用但不總是正確的。這是因為,目前的系統(tǒng)尤其是企業(yè)系統(tǒng)涉及如此多的交互(在應用和持久數(shù)據(jù)之間,在應用和硬件/軟件系統(tǒng)之間,在應用和數(shù)據(jù)庫之間等),以至于任何可用的文檔無法定義一個將所有可能的交互考慮在內(nèi)的配置。部署者必須根據(jù)任何可用的文檔和使用數(shù)據(jù)來初始設置其系統(tǒng)配置。然后,他們根據(jù)對系統(tǒng)性能的經(jīng)驗觀測來精細地調(diào)節(jié)其系統(tǒng)配置,而不會認識到初始設置是有缺陷的。下面將說明一突出顯示此情況的試驗。
接著,在步驟307中,用所述隨機選擇的一組配置參數(shù)來配置應用。然后,在步驟309中,該應用以所述隨機選擇的參數(shù)值運行。在應用結(jié)束之后,在步驟311中,對于該應用運行,記錄下基準性能值例如吞吐量和響應時間。應指出,吞吐量和響應時間是在此特定示例內(nèi)記錄的基準,但是根據(jù)將被檢查的系統(tǒng)以及期望目標也可記錄其他值。以作為對吞吐量的測量的每秒百萬指令數(shù)(MIPS)測量的系統(tǒng)的執(zhí)行速度也是用于測量整個系統(tǒng)性能的另一個重要的基準。
假設在此示例中,每個測試將運行25次。在本發(fā)明的精神和范圍內(nèi)可使用任何數(shù)量的合理的測試運行。該數(shù)量總是靈活的,并且可被部署者隨時改變以獲得更好的測試數(shù)據(jù)。已知多種確定是否已執(zhí)行在統(tǒng)計上有意義的運行數(shù)量的方法。
在步驟313中,如果應用沒有以當前的參數(shù)值運行所決定的次數(shù),則決定再次運行該應用。然后,過程返回到步驟305,來選擇另一組配置參數(shù)。應注意,每次測試運行包括一組新的隨機選擇的參數(shù)值。應理解,在一次探索中一些參數(shù)值被多次選擇,而一范圍內(nèi)一些參數(shù)值根本沒有被選擇。以參數(shù)“線程可增長”為例。此參數(shù)僅有兩個可能值“True”或“False”。很明顯,在25次運行測試情況下這兩個值將被多次選擇。相反,可用在從50到500的范圍內(nèi)的一個值設置“語句緩存”。假設該值增加10,則很明顯,25次運行不能覆蓋45個可能的選擇中的每一個。但是,隨機選擇將覆蓋此范圍內(nèi)的足夠多的值以得到有意義的結(jié)果,這就夠了。如果測試判定不是這種情況,則可增加運行的數(shù)量。
應指出,存在許多可針對該應用運行的不同類型的工作負荷。將運行的工作負荷的類型包括1)強調(diào)總吞吐量對最大系統(tǒng)限制(思考時間對無思考時間);2)隨時間改變負荷以注意響應時間/吞吐量等級;以及3)不同應用功能的不同部分(混合工作負荷)。
在工作負荷運行25次之后,在步驟315中,分析記錄的結(jié)果。對結(jié)果的分析將指示測試是否產(chǎn)生有意義的數(shù)據(jù)。此分析步驟自身可以是自動的??墒褂媒y(tǒng)計技術例如多重回歸來從運行結(jié)果中推斷出有用的信息。如果測試未產(chǎn)生有意義的數(shù)據(jù),則可增大運行的數(shù)量,或者可在此處停止測試。此方法并不保證每個測試有最優(yōu)的結(jié)果。為此示例的目的,假設25次測試運行已產(chǎn)生一些有意義的結(jié)果,并且已統(tǒng)計地分析了測試運行的結(jié)果,得出平均響應時間和吞吐量與兩個最重要的配置參數(shù),EJB容器線程池大小和數(shù)據(jù)源連接池最大值,相關。假設在此示例中,部署者根據(jù)使用和回歸測試得知這兩個參數(shù)對吞吐量和平均響應時間的基準值的變化的貢獻是最大的。根據(jù)此信息,如圖5和6將示出的,下一步的分析將集中于與這兩個參數(shù)的值有關的測試結(jié)果。
盡管此過程可完全自動進行并且從開始進行到結(jié)束而只有很少或沒有用戶交互,但是在本發(fā)明的另一實施例中,如下所述修改該測試將具有更大的好處自動運行最初的一組測試,并然后停止試驗,分析結(jié)果,并然后根據(jù)發(fā)現(xiàn)的結(jié)果縮小對剩余的測試的關注范圍。最初的運行會突出顯示某些需要更仔細觀察的參數(shù)。以這種方式,可更詳盡地測試被初始測試挑選出的作為系統(tǒng)性能(正面的或負面的)的重要貢獻者的參數(shù),而不是平等地測試所有參數(shù)。該方法的這種動態(tài)版本可通過將測試的關注范圍迅速限制到顯得會導致性能的更重要變化的那些值,可更快地確定最優(yōu)配置。部署者必須相對于進行中間分析并改變測試的過程中所涉及的額外資源(人力和/或數(shù)據(jù)處理)來衡量此動態(tài)版本的好處。
參照圖4,其示出根據(jù)本發(fā)明的一個實施例的用于測試的硬件配置。在此示例中,Web服務器(HIS 1.3.19)和應用服務器(WebSphere 4.03)在同一機器404上運行。數(shù)據(jù)庫(DB2 7.2 fixpack 5)406優(yōu)選地在單獨的機器上運行。應用服務器404和數(shù)據(jù)庫406在此示例中是同一機器。工作負荷驅(qū)動器402被表現(xiàn)為一桌面計算機系統(tǒng),但是它可以是任何合適的信息處理機器。
為了進一步說明此方法的好處,下面考察一案例研究,其中探索了應用服務器404的配置空間。此探索將作為“黑箱”測試來進行。此示例將全部集中于配置空間的探索結(jié)果,因此假設某些條件,如下所示
應用制造軟件應用將配置的系統(tǒng)應用服務器硬件如圖4所示的硬件配置軟件圖2所示的系統(tǒng)被測試的參數(shù)見表1被測試的值的范圍見表2運行時間大約15分鐘測試者 系統(tǒng)部署者選擇值的方法隨機數(shù)生成還假設已用給定配置測試應用服務器以確定在應用本身或者該應用在其中運行的系統(tǒng)中沒有固有的問題。假設用給定配置運行該應用15次在測量的吞吐量中產(chǎn)生很小的變化。測量的標準偏差/均值是1.1%,這是令人滿意的。接著,用選自表2中所示的范圍的變化的配置參數(shù)組來運行應用25次。其結(jié)果如圖5所示。
圖5示出代表25運行的條形圖。針對25次隨機配置空間探索運行中的每一次所測量的吞吐量(每分鐘的事務)沿縱軸示出,其數(shù)量是從0到1400。配置空間探索運行在橫軸上示出,其編號是從1到25。圖5的條形圖清楚地示出應用服務器的配置對性能有很大影響。最大吞吐量(測量為超過1200)是最小吞吐量(測量為90)的14倍。
通過檢查變量對和吞吐量之間的關系來分析數(shù)據(jù)揭示出,當EJB容器線程池大小被設置為高于數(shù)據(jù)源連接池最大值時,該系統(tǒng)的性能較差。多重回歸分析進一步示出其他參數(shù)對吞吐量的影響極小,因此更仔細地觀察最大數(shù)據(jù)源連接池大小和EJB容器線程池大小之間的相關性是有利的。圖6是將吞吐量示出為最大數(shù)據(jù)源連接池大小和EJB容器線程池大小的差的函數(shù)的圖。參照此圖,很明顯當數(shù)據(jù)源連接池最大值大于EJB容器線程池大小(差值為正值)時,系統(tǒng)的吞吐量落在可接受的范圍內(nèi)。在相反情況下,系統(tǒng)響應較差。對系統(tǒng)日志的檢查揭示出存在大量對吞吐量造成負面影響的事務回退。此行為的原因是該應用訪問數(shù)據(jù)庫150的方式。使用得自此方法以及系統(tǒng)日志檢查的關于EJB容器線程池大小與數(shù)據(jù)源連接池最大值之間的關系的信息,可推斷出此應用示出應用/數(shù)據(jù)庫交互如何影響應用服務器配置。在某些情況下,應用的一組件需要多于一個與數(shù)據(jù)庫150的連接。在負荷之下,會出現(xiàn)這樣的情況,其中在EJB容器池中執(zhí)行的每個線程已獲取一個連接并等待得到另一個連接。如果連接比線程少,則不能前進。最后,線程等待連接超時,并回退它們的事務。在接收到回退的通知時,應用試圖重新開始該事務,從而再次導致同樣的情況。不能前進,因此對吞吐量的影響嚴重。
進一步的試驗揭示出增加數(shù)據(jù)源連接池大小以至于其大于EJB容器線程池大小可解決此問題。如前文所述,這是一種遵循最佳實踐指南將導致相反結(jié)論的情況。這是因為調(diào)節(jié)應用服務器時所接受的觀念是在遠離客戶機時限制資源。換句話說,使Web容器線程多于EJB容器線程,以及EJB容器線程多于數(shù)據(jù)源連接。在此特定應用中,此規(guī)則是不合適的,因為線程所需的連接數(shù)可大于線程數(shù)。當出現(xiàn)這種情況時,可有兩種解決方法-增加數(shù)據(jù)連接的數(shù)量,或修改應用從而每個線程至多使用一個連接。
在另一個案例研究中,條件類似于前一個例子的條件,除了操作環(huán)境是一證券公司。圖7是示出25個配置空間探索運行中的每一個的平均響應時間的條形圖。沿橫軸示出每個應用運行,其編號為1到25。沿縱軸示出平均響應時間。在此情況下最大和最小平均響應時間之間的差僅為百分之14。通過使用統(tǒng)計方法,通過將9個參數(shù)中的每一個與平均響應時間相關聯(lián),來得出突出顯示值之間的關系的強度的、這些值之間的相關性。為了發(fā)現(xiàn)相關系數(shù),取每個配置參數(shù),并記錄25個值(針對25次測試運行中的每一次)。將每個配置參數(shù)的每個值與用被設置為這些值的參數(shù)組得到的平均響應時間配對。得到這樣的相關系數(shù),其表示一參數(shù)值與平均響應時間之間的關系的強度,并可為正值和負值。最強的相關性用更高的數(shù)(正值或者負值)表示。表3示出9個參數(shù)值中的每一個與平均響應時間之間的相關性。
表3

從表3可見,最高的相關系數(shù)的值與Web容器線程池最大值(.68)和語句緩沖(-.56)相關。該數(shù)的值越高,則該參數(shù)值和記錄的結(jié)果之間的相關性就越大。該數(shù)的符號指示該參數(shù)值和平均響應時間之間的關系(正的或負的)。Web容器線程池最大值與平均響應時間之間的正相關性表示,增加該Web容器線程的數(shù)量將增大響應延時,從而Web容器線程池最大值的參數(shù)值應減小以便提高響應時間。相反,語句緩存和平均響應時間之間的負相關性表示此參數(shù)值應該提高。在此示例中,說明有理由集中于對兩個參數(shù),Web容器線程池最大值和語句緩沖,進行進一步測試。
圖8是包含可配置成根據(jù)本發(fā)明的一實施例操作的邏輯的可編程計算機的簡化框圖。該邏輯可體現(xiàn)為用于該可編程計算機的軟件或該計算機內(nèi)的專用集成電路(ASIC)。根據(jù)本發(fā)明的一實施例,計算機可讀介質(zhì)例如CDROM 801可包含用于根據(jù)本發(fā)明操作該可編程計算機800的程序指令。該可編程計算機800的處理裝置包括隨機存取存儲器802、只讀存儲器804、處理器806以及輸入/輸出控制器808。它們通過CPU總線809連接在一起。另外,還存在輸入/輸出總線829、輸出/輸出接口810、磁盤驅(qū)動控制器812、大容量存儲設備820、大容量存儲接口814以及可拆裝的CDROM驅(qū)動器816。已示出和說明的是可編程計算機裝置的高度簡化的描述。本技術領域內(nèi)的技術人員將理解,在計算機裝置的任何實際應用中需要其他低層的元件和連接。
因此,盡管已說明了目前被認為是優(yōu)選實施例的實施例,但是本技術領域內(nèi)的技術人員將理解,在本發(fā)明的精神內(nèi)可進行其他修改。
權利要求
1.一種為至少一個軟件系統(tǒng)設置配置參數(shù)的方法,包括以下步驟a)接收用于將被最優(yōu)化的至少一個軟件系統(tǒng)的一組配置參數(shù);b)從用于每個感興趣的配置參數(shù)的預定范圍中選擇隨機值;c)將每個配置參數(shù)設置為對應的隨機值;d)使用選擇的值運行應用;e)在該應用運行時,收集與該軟件系統(tǒng)有關的性能信息;f)將步驟b)到e)重復選定的次數(shù);以及g)分析收集到的性能信息以確定最優(yōu)的配置參數(shù)。
2.根據(jù)權利要求1的方法,其中,步驟b)還包括在選擇隨機值之前選擇配置參數(shù)的范圍。
3.根據(jù)權利要求2的方法,其中,步驟b)還包括在選擇配置參數(shù)的范圍時執(zhí)行一致性檢驗。
4.根據(jù)權利要求1的方法,其中,該應用服務器包括Java虛擬機,并且步驟b)包括選擇用于堆的最大值的256-512兆字節(jié)的范圍。
5.根據(jù)權利要求1的方法,其中,步驟d)包括相對于應用服務器運行工作負荷,以及步驟e)包括測量該應用服務器的性能特性。
6.根據(jù)權利要求5的方法,其中,步驟e)包括測量該軟件系統(tǒng)的響應時間。
7.根據(jù)權利要求5的方法,其中,步驟e)包括測量該軟件系統(tǒng)的吞吐量。
8.根據(jù)權利要求5的方法,其中,步驟e)包括測量該軟件系統(tǒng)的執(zhí)行速度。
9.根據(jù)權利要求1的方法,還包括使用多重回歸測試以從運行該應用中得到性能信息。
10.根據(jù)權利要求1的方法,還包括使用功能測試以從運行該應用中得到性能信息。
11.根據(jù)權利要求1的方法,還包括向用戶提出如何調(diào)節(jié)參數(shù)的建議。
12.根據(jù)權利要求1的方法,其中,步驟g)包括得到該軟件系統(tǒng)的每個配置參數(shù)和平均響應時間之間的相關系數(shù)。
13.根據(jù)權利要求12的方法,其中,步驟g)還包括與得到的與所述配置參數(shù)有關的相關系數(shù)相反地調(diào)節(jié)該配置參數(shù)。
14.根據(jù)權利要求11的方法,還包括向用戶提出運行另外的非隨機測試以確定最優(yōu)配置參數(shù)的建議。
15.根據(jù)權利要求11的方法,還包括根據(jù)所述測試的結(jié)果調(diào)試程序。
16.根據(jù)權利要求1的方法,其中,步驟g)包括執(zhí)行統(tǒng)計分析。
全文摘要
一種為至少一個軟件系統(tǒng)設置配置參數(shù)的方法,包括以下步驟a)接收對用于將被最優(yōu)化的至少一個軟件系統(tǒng)的一組配置參數(shù)的標識;b)從用于每個感興趣的配置參數(shù)的預定范圍內(nèi)選擇一隨機值;c)將每個配置參數(shù)設置為對應的所選擇的隨機值;d)使用選擇的值運行應用;e)在該應用運行時,收集與該軟件系統(tǒng)有關的性能信息;f)將步驟b)到e)重復選定的次數(shù);以及g)分析收集到的性能信息以確定最優(yōu)的配置參數(shù)。該方法可由運行用于執(zhí)行上述方法步驟的程序指令的可編程計算機系統(tǒng),或由專用裝置例如ASIC(專用集成電路)執(zhí)行。
文檔編號G06FGK1768328SQ200480008712
公開日2006年5月3日 申請日期2004年4月16日 優(yōu)先權日2003年4月17日
發(fā)明者M·拉加伐查里, R·D·約翰遜, D·C·賴默 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1