雲端計算面試題——apache相關
1.apache軟體處理併發的模型有幾種
有三種:prefork worker event。 prefork就是多程序響應多個請求的,會事先創建出來一部分空閒程序,但是請求比較多時會大量消耗資源,所以還需要通過最小空閒程序和最大空閒程序來限制,並引進了程序重用(master不需要將處理完請求的程序殺掉,而是保留可以 處理其他的請求),apache2.2的版本預設使用這種方式,且應用最為廣泛; worker是單程序多執行緒的方式; event就是多程序響應多請求的方式,apache2.4預設的處理模型就是event
2.prefork 和worker兩種模型
.# prefork MPM <IfModule prefork.c> //程序模式 StartServers 10 //初始建立的程序數 MinSpareServers 10 //最小空閒的程序數 MaxSpareServers 15 //最大空閒的程序數 ServerLimit 2000 //最大啟動的程序數 預設256 MaxClients 2000 //最大併發連線數 預設256 MaxRequestsPerChild 4000 //每個子程序在其生命週期內允許響應的最大請求數,0不限制 </IfModule>
# worker MPM <IfModule worker.c> //執行緒模式 StartServers 2 //初始建立的程序數 ThreadsPerChild 50 //每個程序建立的執行緒數 MinSpareThreads 100 //最小空閒的執行緒數 MaxSpareThreads 200 //最大空間的執行緒數 MaxClients 2000 //最大的併發訪問量(執行緒) MaxRequestsPerChild 0 //每個子程序在其生命週期內允許響應的最大請求數,0不限制 </IfModule>
3.httpd特性:
事先建立程序 按需維持適當的程序 基於模組化設計,這是其最大的優勢;模組支援線上載入和啟用,使用時在配置檔案中新增即可。 支援執行配置,支援單獨編譯模組 支援多種虛擬主機的配置 支援https協議(mod_ssl) 支援使用者認證 支援基於IP或主機名的訪問控制機制 支援每目錄的訪問控制,支援對網站主目錄和各級目錄設定訪問控制 也可以基於使用者的認證方式 支援URL重寫:伺服器將客戶端的請求的地址改寫就是URL重寫