久久精品国产亚洲怮怮_奇米网777色在线精品_亚洲色中文字幕制服丝袜_久久精品人人做人人看

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

linux服務器每秒并發(fā)處理數(shù)的計算方法

發(fā)布時間:  2012/5/23 20:06:52

1、利用網(wǎng)絡處理量計算。

計算參考公式:

并發(fā) = connection established / min(server keepalive, server timeout)

翻譯一下:

并發(fā) = 億恩科技服務器傳輸鏈接數(shù) 除以 億恩科技服務器軟件的keepalive設(shè)置和億恩科技服務器軟件的超時設(shè)置之間的最小值

這個公式算出來的數(shù)字是keepalive時間段內(nèi)的平均值,比真實平均值要小一點,如果想找最大值就要設(shè)定keepalive為0或1,然后多探測幾次。

connection established是億恩科技服務器當前正在傳輸?shù)逆溄樱莐eepalive打開時,新建立的傳輸鏈接會一直存在直到keepalive/timeout關(guān)閉鏈接;客戶端主動關(guān)閉鏈接的話connection established也會關(guān)閉,不過這種鏈接一般比較少,多數(shù)瀏覽器都是支持keepalive并遵守億恩科技服務器配置的。

在linux查看connection established數(shù)字的辦法是在命令行執(zhí)行:

netstat -est|grep "connections established"|cut -d "c" -f 1

keepalive和timeout數(shù)字查看辦法要查看web server軟件的配置文件

注意:這個方法只能用于最前端的億恩科技服務器或7層交換機,前端之后的億恩科技服務器因為緩存或鏈接方式的原因往往是不準確的。

2、利用億恩科技服務器日志計算

因為億恩科技服務器每處理一個請求,都會在日志里留下一條信息,所以利用億恩科技服務器軟件的日志來計算是最準確的,但是是這種計算方式浮動也可能會比較大,需要取最大值計算。

首先在確定億恩科技服務器軟件有將所有請求寫入一個日志文件里,并確保該日志文件正在不停記錄。

為節(jié)省時間和億恩科技服務器資源,把log文件的最后一萬條記錄拿出來統(tǒng)計,我就用nginx默認的main格式作個例子:

執(zhí)行命令:

tail -10000 nginx.log | awk '{print $4;}' | sort | uniq -c

命令的意思是取log文件的最后一萬條記錄,然后用awk取得日志文件中表示時間的一列($4),接著再對該列進行一次排序,最后是用uniq把這一列相鄰的重復行合并,并計算合并的條數(shù)。

其中先sort再uniq是一種安全的做法,以確保同一秒的日志先被歸到一起,然后再合并,這樣就不會有同一秒種的日志會被切成幾段這樣的現(xiàn)象。

可以得到輸出:

23 [09/Sep/2008:20:26:02

26 [09/Sep/2008:20:26:03

17 [09/Sep/2008:20:26:04

20 [09/Sep/2008:20:26:05

...

70 [09/Sep/2008:20:29:43

61 [09/Sep/2008:20:29:44

45 [09/Sep/2008:20:29:45

37 [09/Sep/2008:20:29:46

2 [09/Sep/2008:20:29:47

在這些輸出中,第一條記錄和最后一條記錄因為時間有可能被切斷,所以是完全不可靠之信息,可以忽略。

如果輸出少于10行的話,要擴大一下范圍,修改tail -10000為tail -100000取最后十萬條數(shù)據(jù)統(tǒng)計。

如果只需要看最大值,可以再用sort命令進行排序,并用head命令取出前10行記錄:

tail -10000 nginx.log | awk '{print $4;}' | sort | uniq -c | sort -nr | head

awk命令是一個功能比較強的命令,在這里只用到最簡單的awk '{print $4;}',意思是將日志每行按空格切分開,然后切出來的結(jié)果依次從左到右就是$1 $2 $3 ...,nginx默認的main日志時間字段剛好是$4,所以在這里拿$4來計算。如果是別的格式的日志,依照這個辦法去找到列數(shù):

就拿apache默認的日志來看,首先:

head -1 apache.log

得到類似以下的輸出:

60.8.207.86 - - [09/Sep/2008:21:03:58 +0800] "GET / HTTP/1.0" 200 11141 "http://www.sudone.com" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"

用awk按空格來切分開之后,60.8.207.86就是$1,$2和$3都是-,[09/Sep/2008:21:03:58是$4,這就是需要拿出來統(tǒng)計的。嗯,怎么apache的日志和nginx的一樣的?現(xiàn)在才發(fā)現(xiàn)。

那命令也基本沒什么變化,執(zhí)行一下:

tail -10000 apache.log | awk '{print $4;}' | sort | uniq -c | sort -nr | head

注意,如果是在squid億恩科技服務器后面的apache,則日志會變成這樣:

60.8.207.86, 127.0.0.1 - - [09/Sep/2008:21:03:58 +0800] "GET / HTTP/1.0" 200 11141 "http://www.sudone.com" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"

因為日志的第一個段:x_forwarded_for中含有空格,所以時間的段會在$3、$4或$5之間變化,從而不能確定,可以先用一次awk或cut以[這個符號切分一下:

tail -10000 apache.log | awk -F"[" '{print $2;}' | awk '{print $1;}' | sort | uniq -c | sort -nr | head

tail -10000 apache.log | cut -d"[" -f 2 | awk '{print $1;}' | sort | uniq -c | sort -nr | head

這樣統(tǒng)計就準確了。


本文出自:億恩科技【prubsntakaful.com】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關(guān)注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線