公司Apache服務

什麼是apache?

Apache HTTP Server(簡稱Apache)是Apache軟件基金會的一個開放源碼的網頁服務器,可以在大多數計算機操作系統中運行,由於其多平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。它快速、可靠並且可通過簡單的API擴展,將Perl/Python等解釋器編譯到服務器中。
Apache HTTP服務器是一個模塊化的服務器,經過多次修改,成爲世界使用排名第一的Web服務器軟件。 它可以運行在幾乎所有廣泛使用的計算機平臺上。

Apache安裝部署:
yum -y install httpd
Apache主配文件位置:
/etc/httpd/conf/httpd.conf

配置參數詳解:

Listen:Listen主要偵聽web服務端口狀態,默認爲:80,即偵聽所有的地址的80端口,注意這裏也可以寫成IP地址的偵聽形式,不寫即默認的地址:0.0.0.0。
DocumentRoot:此區域的配置文件,主要是針對Apache默認網站根目錄的設置以及相關的權限訪問設置,默認對網站的根目錄具有訪問權限,此選項默認值即可
ServerRoot:主要用於指定Apache的安裝路徑,此選項參數值在安裝Apache時系統會自動把Apache的路徑寫入。Windows安裝時,該選項的值爲Windows安裝的路徑,Linux安裝時該選項值爲編譯時選擇的路徑。
ServerAdmin:apache服務默認管理員地址設置。此選項主要用指定Apache服務管理員通知郵箱地址,選擇默認值即可,如果有真實的郵箱地址也可以設置此值。
ServerName:此選項主要用指定Apache默認的服務器名以及端口,默認參數值設置爲:ServerName localhost:80即可。
DirectoryIndex:此區域文件主要設置Apache默認支持的首頁,默認只支持:index.html首頁,如要支持其他類型的首頁,需要在此區域添加:如index.php表示支持index.php類型首頁。

訪問apache服務:
安裝完畢apache並且啓動成功,即可進行訪問(記得關閉防火牆):
 service httpd start

瀏覽器訪問方式:http://192.168.152.130
在這裏插入圖片描述
Elinks命令方式:
Elinks是基於文本的免費瀏覽器,用於Unix及基於Unix的系統。Elinks支持 HTTP,HTTP Cookies以及支持瀏覽Perl和Ruby腳本。也很好的支持選項卡瀏覽。最棒的是它支持鼠標、彩色以及支持一系列的協議,例如HTTP, FTP, SMB, Ipv4 和 Ipv6。
說白了其就是一個命令瀏覽器。

 yum -y install elinks
 elinks

在這裏插入圖片描述
在這裏插入圖片描述

elinks會全屏顯示,替代之前的command line。
在enter url中輸入你想訪問的網址,比如www.1702a.org,等待進入網頁之後會得到一個純文字版本的網頁。
elinks界面下可以使用快捷鍵
g : 進入網頁XXX:。
g:Enter URL中輸入g會指向google
sd:指向www.slashdot.org一個爲nerds服務的新聞網站,貌似在黑客圈子比較盛行。我記得《黑客與畫家》作者在書中介紹過這個網站。
d:會進入dict.org,一個在線字典網站
. : 可以爲一個頁面中的鏈接加上索引,輸入索引快速跳到該鏈接上,輸入Enter進入。
t:打開一個新的Tab
< : 進入前一個tab
> : 進入後一個tab
c :關閉當前tab
Space:翻頁
Up: 上個鏈接
Down:下個鏈接
Left:Back
Esc:會打開菜單欄

Ab壓測命令:

ab是apache自帶的壓力測試工具。ab非常實用,它不僅可以對apache服務器進行網站訪問壓力測試,也可以對或其它類型的服務器進行壓力測試。比如nginx、tomcat、IIS等。

常用參數說明:

-n在測試會話中所執行的請求個數。默認時,僅執行一個請求。
-c一次產生的請求個數。默認是一次一個。
-t測試所進行的最大秒數。其內部隱含值是-n 50000,它可以使對服務器的測試限制在一個固定的總時間以內。默認時,沒有時間限制。
-p包含了需要POST的數據的文件。
-P對一箇中轉代理提供BASIC認證信任。用戶名和密碼由一個:隔開,並以base64編碼形式發送。無論服務器是否需要(即, 是否發送了401認證需求代碼),此字符串都會被髮送。
-T POST數據所使用的Content-type頭信息。
-v設置顯示信息的詳細程度-4或更大值會顯示頭信息,3或更大值可以顯示響應代碼(404,200等),2或更大值可以顯示警告和其他信息。
-V顯示版本號並退出。
-w以HTML表的格式輸出結果。默認時,它是白色背景的兩列寬度的一張表。

事例:

同時處理100個請求並運行10次index.php文件。

 ab -c 10 -n 100 http://a.ilanni.com/index.php
-c10表示併發用戶數爲10
-n100表示請求總數爲100
http://a.ilanni.com/index.php表示請求的目標URL

在這裏插入圖片描述
測試結果也一目瞭然,apache測試出的吞吐率爲:Requests per second: 527.34 [#/sec] (mean)
其他一些信息,需要說明下,如下:
Server Software表示被測試的Web服務器軟件名稱。
Server Hostname表示請求的URL主機名。
Server Port表示被測試的Web服務器軟件的監聽端口。
Document Path表示請求的URL中的根絕對路徑,通過該文件的後綴名,我們一般可以瞭解該請求的類型。
Document Length表示HTTP響應數據的正文長度。
Concurrency Level表示併發用戶數,這是我們設置的參數之一。
Time taken for tests表示所有這些請求被處理完成所花費的總時間。
Complete requests表示總請求數量,這是我們設置的參數之一。
Failed requests表示失敗的請求數量,這裏的失敗是指請求在連接服務器、發送數據等環節發生異常,以及無響應後超時的情況。
Total transferred表示所有請求的響應數據長度總和,包括每個HTTP響應數據的頭信息和正文數據的長度。注意這裏不包括HTTP請求數據的長度,僅僅爲web服務器流向用戶PC的應用層數據總長度。
HTML transferred表示所有請求的響應數據中正文數據的總和,也就是減去了Total transferred中HTTP響應數據中的頭信息的長度。
Requests per second吞吐率,計算公式:Complete requests/Time taken for tests
Time per request用戶平均請求等待時間,計算公式:Time token for tests/(Complete requests/Concurrency Level)。
Time per requet(across all concurrent request)服務器平均請求等待時間,計算公式:Time taken for tests/Complete requests,正好是吞吐率的倒數。也可以這麼統計:Time per request/Concurrency Level。
Transfer rate表示這些請求在單位時間內從服務器獲取的數據長度,計算公式:Total trnasferred/ Time taken for tests,這個統計很好的說明服務器的處理能力達到極限時,其出口寬帶的需求量。
Percentage of requests served within a certain time(ms)這部分數據用於描述每個請求處理時間的分佈情況,比如以上測試,80%的請求處理時間都不超過6ms,這個處理時間是指前面的Time per request,即對於單個用戶而言,平均每個請求的處理時間。

Pv和uv:

PV是網站分析的一個術語,用以衡量網站用戶訪問的網頁的數量。對於廣告主,PV值可預期它可以帶來多少廣告收入。一般來說,PV與來訪者的數量成正比,但是PV並不直接決定頁面的真實來訪者數量,如同一個來訪者通過不斷的刷新頁面,也可以製造出非常高的PV。
PV(page view)即頁面瀏覽量或點擊量,是衡量一個網站或網頁用戶訪問量。具體的說,PV值就是所有訪問者在24小時(0點到24點)內看了某個網站多少個頁面或某個網頁多少次。PV是指頁面刷新的次數,每一次頁面刷新,就算做一次PV流量。度量方法就是從瀏覽器發出一個對網絡服務器的請求(Request),網絡服務器接到這個請求後,會將該請求對應的一個網頁(Page)發送給瀏覽器,從而產生了一個PV。那麼在這裏只要是這個請求發送給了瀏覽器,無論這個頁面是否完全打開(下載完成),那麼都是應當計爲1個PV。
UV(unique visitor)即獨立訪客數,指訪問某個站點或點擊某個網頁的不同IP地址的人數。在同一天內,UV只記錄第一次進入網站的具有獨立IP的訪問者,在同一天內再次訪問該網站則不計數。UV提供了一定時間內不同觀衆數量的統計指標,而沒有反應出網站的全面活動。

併發:

高併發,其實就是使用技術手段使得系統可以並行處理很多的請求!衡量指標常用的有響應時間,吞吐量,每秒查詢率QPS,併發用戶數。
響應時間:系統對請求做出響應的時間。簡單理解爲一個http請求返回所用的時間
吞吐量:單位時間內處理的請求數量。
QPS:每秒可以處理的請求數
併發用戶數:同時承載正常使用系統功能的用戶數量。也就是多少個人同時使用這個系統,這個系統還能正常運行。這個用戶數量就是併發用戶數了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章