最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

對Nginx支持SSL的性能進行優(yōu)化的方法

 更新時間:2015年06月28日 10:25:19   投稿:goldensun  
這篇文章主要介紹了對Nginx支持SSL的性能進行優(yōu)化的方法,作者分別以不同方法進行了8個優(yōu)化實驗,需要的朋友可以參考下

這篇文章是講web服務器方面的性能調整. 不包括數(shù)據(jù)庫性能的調整.
初始化服務器

這個web服務器運行在一個EC2 t1.micro 環(huán)境.我選擇 Nginx + PHP5-FPM 來運行php頁面,出于安全考慮我使用SSL.
測試性能

我使用Blitz.io來進行壓力和性能測試. 下面的是我壓力測試的命令. 功能是在60秒內逐漸增加用戶. 在整個過程中,Blitz.io 每秒創(chuàng)建一個請求并增加4個用戶(rise/run = 260/60).

復制代碼 代碼如下:
-p 1-250:60 https://mydomian.com

詳細的解釋

對于愛好者來說,這里是詳細的解釋。我將會在下述章節(jié)帶領你重溫我的思考過程。
如果編輯了Nginx配置,那么重啟Nginx服務器。如果編輯了PHP5-FPM配置,那么重啟服務。

嘗試 #1: 增強硬件

對于改善性能,我本能的想法是增強服務器硬件,希望一切都會正常工作。我將EC2實例從t1.micro升級到了c1.medium(針對高流量服務器進行了優(yōu)化,而不是通用服務器)。

在此之后,我運行了Blitz.io負載測試。這是結果的截圖

2015628100933572.png (983×869)

 服務器的峰值性能可以達到每秒50個成功命中。隨著負載的繼續(xù)增加,超時的數(shù)量上升,而命中的數(shù)量下降。

嘗試 #2: 評效CPU性能

我重新執(zhí)行了測試,同時在后臺運行htop。我注意到兩個CPU的利用率不超過13%。內存使用了300Mb??雌饋矸掌鳑]有充分利用。所以我做了下述改變。我編輯了/etc/ngnix/nginx.conf

復制代碼 代碼如下:
worker_processes 2;

嘗試 #3, #4, #5: 微調 Nginx + PHP5-FPM

在下述嘗試中,我改變了下述值,仍然獲得跟嘗試 #1同樣的結果。

嘗試 #3

復制代碼 代碼如下:
/etc/ngnix/nginx.conf

worker_processes 2;
events {
worker_connections 19000;
multi_accept on;
}
...

_________

嘗試 #4

復制代碼 代碼如下:
/etc/ngnix/nginx.conf

worker_processes 2;
events {
  worker_connections 19000;
  multi_accept on;
}
http {
  gzip on;
  gzip_disable "msie6";

  gzip_min_length  1000;
  gzip_proxied     expired no-cache no-store private auth;
  gzip_types       text/plain application/xml application/javascript text/css application/x-javascript;

}
...

________

嘗試 #5
我沒有取消嘗試 #4的改變

復制代碼 代碼如下:
/etc/php5/fpm/pool.d/www.conf

pm.max_children = 160
pm.start_servers = 24
pm.min_spare_servers = 20
pm.max_spare_servers = 35
pm.max_requests = 1500

嘗試 #6: 部署另外一臺服務器


我還有另外一臺Linode服務器。具有1.5Gb的內存和8個CPU。我復制所有Nginx和PHP5-FPM的設置到這臺服務器上。

這是我使用Blitz.io進行壓力測試的命令

復制代碼 代碼如下:
-p 1-250:60 http://labs.mydomian2.com

這是結果:

2015628101201117.png (976×890)

 Linode服務器非常棒!我在想“Linode比EC2好么?”。在我決定沿著這條思路走下去,將代碼遷移到Linode之前,我想要確保兩臺服務器之間沒有差別。


嘗試 #7: 大啟示

我搜索了一下,發(fā)現(xiàn)Nginx有些SSL相關的問題。默認Nginx使用DHE算法創(chuàng)建密碼(cipher)。禁用該算法將會提升性能。

所有我編輯/etc/nginx/nginx.conf去掉了kEDH密碼算法。

復制代碼 代碼如下:
worker_processes 2;
events {
  worker_connections 1024;
}
http {
  gzip on;
  gzip_disable "msie6";

  gzip_min_length  1000;
  gzip_proxied     expired no-cache no-store private auth;
  gzip_types       text/plain application/xml application/javascript text/css application/x-javascript;
  ssl_ciphers ALL:!kEDH!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; 

}
...

我重現(xiàn)執(zhí)行了原來的壓力測試:

復制代碼 代碼如下:
-p 1-250:60 https://mydomian.com

這是結果:

2015628101224107.png (992×869)

 真的有效?。。?!

嘗試 #8: 我真的需要增強硬件

太棒了,EC2與Linode在性能上很接近。但是我真的需要c1.medium實例來獲得這種性能么?可能不需要... 所以我將EC2的實例類型改回了t1.micro。

I因為micro實例只有一個CPU,所有我在/etc/nginx/nginx.conf中減少了worker_processes。

復制代碼 代碼如下:
worker_processes 1;
...

這是結果:

2015628101302172.png (986×891)

 嗯,額外的硬件是有幫助的。
結論

想要在使用了SSL的Nginx服務器上獲得最好的性能,如下操作:

  •     - 默認使用的DH算法是低性能的最大原因。改變SSL密碼設置如下:

復制代碼 代碼如下:
    ssl_ciphers ALL:!kEDH!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;

  •     - 升級EC2從t1.micro到c1.medium
  •     - 因為c1.medium有兩個CPUs,所有設置Nginx有兩個工作進程。


相關文章

  • nginx代理轉發(fā)報錯405?Method?Not?Allowed解決

    nginx代理轉發(fā)報錯405?Method?Not?Allowed解決

    這篇文章主要為大家介紹了解決nginx代理轉發(fā)報錯405?Method?Not?Allowed解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • nginx centos 服務開機啟動設置實例詳解

    nginx centos 服務開機啟動設置實例詳解

    這篇文章主要介紹了nginx centos 服務開機啟動設置實例詳解的相關資料,這里對服務開機啟動做了詳細的步驟介紹,需要的朋友可以參考下
    2016-11-11
  • Nginx rewrite正則匹配重寫的方法示例

    Nginx rewrite正則匹配重寫的方法示例

    這篇文章主要介紹了Nginx rewrite正則匹配重寫的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • Nginx訪問限制配置詳解

    Nginx訪問限制配置詳解

    nginx訪問限制可以基于兩個方面,一個是基于ip的訪問控制,另一個是基于用戶的信任登陸控制,本文就詳細的介紹了這兩種方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • 在Nginx中使用X-Sendfile頭提升PHP文件下載的性能(針對大文件下載)

    在Nginx中使用X-Sendfile頭提升PHP文件下載的性能(針對大文件下載)

    這篇文章主要介紹了在Nginx中使用X-Sendfile頭提升PHP文件下載的性能,可以用在針對大文件下載的情況,下載非網站Web目錄文件的需求,提供下載權限控制的場景,需要的朋友可以參考下
    2014-07-07
  • 詳解Nginx如何配置Web服務器的示例代碼

    詳解Nginx如何配置Web服務器的示例代碼

    這篇文章主要介紹了詳解 Nginx如何配置Web服務器的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • Nginx服務快速入門教程

    Nginx服務快速入門教程

    這篇文章主要介紹了Nginx服務快速入門教程的的相關資料,幫助大家更好的理解和使用nginx,感興趣的朋友可以了解下
    2021-02-02
  • Nginx實現(xiàn)異步訪問mysql的配置方法

    Nginx實現(xiàn)異步訪問mysql的配置方法

    這篇文章主要介紹了Nginx實現(xiàn)異步訪問mysql的配置方法,本文先是講解了安裝配置方法,然后給出了使用方法,需要的朋友可以參考下
    2015-06-06
  • linux服務器部署tomcat和Nginx的教程

    linux服務器部署tomcat和Nginx的教程

    這篇文章主要為大家詳細介紹了linux服務器部署tomcat和Nginx的教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Nginx中虛擬主機與指定訪問路徑的設置方法講解

    Nginx中虛擬主機與指定訪問路徑的設置方法講解

    這篇文章主要介紹了Nginx中虛擬主機與指定訪問路徑的設置方法講解,也是在同一個Nginx程序中部署多個站點的基本方法,需要的朋友可以參考下
    2016-03-03

最新評論

平泉县| 大化| 民权县| 准格尔旗| 东山县| 湖北省| 开平市| 临猗县| 星子县| 伊春市| 淮安市| 大港区| 镶黄旗| 北海市| 凤城市| 阿鲁科尔沁旗| 岳普湖县| 行唐县| 定边县| 新丰县| 油尖旺区| 罗山县| 信丰县| 潞城市| 黄陵县| 什邡市| 互助| 辛集市| 云梦县| 钟山县| 泾源县| 铁岭县| 梨树县| 大安市| 蒙山县| 伊金霍洛旗| 油尖旺区| 赫章县| 阳朔县| 长春市| 聂荣县|