此時(shí),您應該使用審計(jì)軟件(jiàn)來(lái)确定哪些服務器(qì)存在問(wèn)題。在這(zhè)種情況下(xià),應用程序二進制文(wén)件(jiàn)版本不一緻是問(wèn)題的(de)根本原因。下(xià)一步是确定哪個(gè)web服務器(qì)或應用程序服務器(qì)有(yǒu)問(wèn)題,以确定從(cóng)哪裏開(kāi)始。類似地(dì),一些好(hǎo)的(de)審計(jì)框架可以幫助我們創建修複程序來(lái)修複當前服務器(qì),然後将它們部署到識别問(wèn)題的(de)所有(yǒu)服務器(qì)。
審計(jì)過程中最困難的(de)步驟是确定要審計(jì)的(de)部分。這(zhè)個(gè)過程取決于您正在運行的(de)應用程序的(de)類型。源碼管理(lǐ)和(hé)部分模式源碼基類編程語言使用操作(zuò)系統和(hé)業(yè)務管理(lǐ)的(de)要求。如果環境能夠容忍長(cháng)時(shí)間(jiān)的(de)停機(jī)時(shí)間(jiān),例如那(nà)些不産生(shēng)收入的(de)停機(jī)時(shí)間(jiān),那(nà)麽它的(de)審計(jì)要求肯定低(dī)于那(nà)些每小(xiǎo)時(shí)産生(shēng)大量收入的(de)停機(jī)時(shí)間(jiān)。後一種環境需要高(gāo)度可控和(hé)自(zì)動化(huà)的(de)方法來(lái)确定問(wèn)題的(de)位置。
在完全虛拟化(huà)的(de)環境中,所有(yǒu)應用程序都(dōu)運行在一個(gè)虛拟化(huà)平台上(shàng)。隻要有(yǒu)一個(gè)負責重新安裝虛拟服務器(qì)和(hé)重新部署應用程序代碼的(de)分發框架,就不需要引入複雜(zá)的(de)審計(jì)框架。除非問(wèn)題經常重複出現(xiàn),否則不需要花(huā)費(fèi)太多的(de)時(shí)間(jiān)來(lái)确定問(wèn)題的(de)位置。如果完全重新構建服務器(qì)和(hé)部署應用程序隻需要8-15分鐘(zhōng),則不需要确定此服務器(qì)的(de)問(wèn)題。
但(dàn)是,審計(jì)在固定或非服務器(qì)虛拟化(huà)基礎設施中非常重要。在此環境中,我們不能使用自(zì)動快照(zhào)來(lái)自(zì)動回滾更改,也不能啓動完全重建整個(gè)服務器(qì)和(hé)應用程序的(de)過程。
注意,即使沒有(yǒu)虛拟化(huà),一些配置管理(lǐ)框架仍然可以保存數據庫的(de)修改曆史,并支持修改的(de)實時(shí)回滾。
固定環境比虛拟化(huà)環境容錯(cuò)能力更低(dī),因此它們必須确定需要檢查哪些文(wén)件(jiàn)、配置和(hé)應用程序。解決大多數問(wèn)題的(de)方法有(yǒu)幾種,如源代碼管理(lǐ)知識庫,但(dàn)它們不能解決系統級配置變化(huà)帶來(lái)的(de)問(wèn)題,如安裝內(nèi)核補丁、更新固件(jiàn)和(hé)設備驅動程序、網卡磁盤控制器(qì)等。這(zhè)些修改通(tōng)常會産生(shēng)意想不到的(de)結果。在逐一解決問(wèn)題之前,工(gōng)程師(shī)必須首先分析所有(yǒu)系統中哪些nic存在問(wèn)題。
審計(jì)框架具有(yǒu)以下(xià)優點:
尋找一些未知的(de)問(wèn)題;提高(gāo)系統和(hé)應用性能;
幫助web基礎設施從(cóng)問(wèn)題中恢複,避免停機(jī)數小(xiǎo)時(shí)甚至數天;
當web設計(jì)web基礎設施出現(xiàn)問(wèn)題時(shí),找到日(rì)志(zhì)或監控系統無法找到的(de)問(wèn)題區(qū)域。