nginx和apache併發效能測試對比

2021-06-21 06:32:59 字數 1504 閱讀 2493

今天在ubuntu 12.04 service版本上搭建了apache2+php的站點以及nginx+php5-fpm的站點,簡單地用apache自帶的ab工具測試了一下併發的效能,具體的測試指令碼如下:

<?php

$arr = array();

for($i=0;$i<1000;++$i)

print_r($arr);

?>

具體的nginx和apache2我都啟用了七個程序,但是 通過 service apache2 restart啟動之後,apache2只有6個程序,而 通過 service nginx restart重啟之後,發現nginx是有七個程序的,每一次測試之前都是先stop服務然後再start服務的,

http://localhost對應的是nginx站點

http://localhost6000對應的是apache站點

結果發現測試結果如下:

然後測試100個併發請求

然後測試250人併發:

可以明顯看出,在**的併發訪問量小於100時,apache的效能會好一些,併發量大於200時,nginx明顯佔優.

我的電腦硬體配置為:

使用命令:cat proc/cpuinfo   

intel(r) core(tm)2 duo cpu     t9400  @ 2.53ghz 

4g記憶體

查詢硬碟資訊:cat

/proc/partitions

查詢記憶體資訊:cat /proc/meminfo |more

併發性 互斥和同步 死鎖和飢餓

二 併發的原理 在單處理器多道程式設計系統中,程序被交替執行,表現出一種併發執行的外部特徵。即使不能實現真正的並行處理,並且在程序間來回切換也需要一定的開銷,交替執行在處理效率和程式結構上還是帶來了重要的好處。在多處理器系統中,不僅可以交替執行程序,而且可以重疊執行程序。三 程序的互動 我們可以根據...

事務處理和併發性

1 全部的表型別都可以使用鎖,但是只有 innodb 和 bdb 才有內建的事務功能。2 使用 begin 開始事務,使用 commit 結束事務,中間可以使用 rollback 回滾事務。3 在預設情況下,innodb 表支援一致讀。sql 標準中定義了 4 個隔離級別 read uncommit...

父子程序的併發性

參考 並行 是指無論從微觀還是巨集觀,二者都是一起執行的,就好像兩個人各拿一把 鐵杴在挖坑,一小時後,每人乙個大坑。併發 在微觀上不是同時執行的,只是把時間分成若干段,使多個程序快速交替的執行,從巨集觀外來看,好像是這些程序都在執行,這就好像兩個人用同一把鐵杴,輪流挖坑,一小時後,兩個人各挖乙個小一...