web-dev-qa-db-ja.com

HTTPSでこれだけ(40倍)のnginxの速度低下が予想されますか?

そこで、「テスト」だけを含む単純なファイルab.htmを作成しました。

ab -n 1000 -c 10 http://www.domain.com/ab.htm

15400req /秒を与えます

そして

ab -n 1000 -c 10 https://www.domain.com/ab.htm

390req /秒をくれます

-kキープアライブフラグを追加すると、最大10,000に戻ります。しかし、それは解決策ではありません。1,000人の同時ユーザーを獲得した場合、それらすべてが同じ接続を共有するわけではありません...

これは、4GB Centos 6 VPS、nginx1.5.6上にあります。

1、100、1000の同時実行でも試してみたところ、同様の結果が得られました。

私はそれが遅くなることを期待していましたが、40倍遅くはありません....これは正常ですか、それとも何かがひどく間違っていますか?それが正常である場合、状況を改善するために何ができますか?弱い暗号などだと思いますか?

はい、これはパズルのごく一部であり、スクリプトやデータベースのロードと比較して比較的重要ではないことを理解しています。それでも、少なくともそれが正常であることを知りたいと思います。

ありがとう


追加情報:

  • CentOS 6.4
  • Intel E5-2640 CPU
  • Xen VPS(HP DL380p Gen8 Proliantサーバー上)
  • 4GBのRAM

バージョンなど:

uname -a

Linux 2.6.32-358.18.1.el6.x86_64#1 SMP Wed Aug 28 17:19:38 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

openssl version

OpenSSL 1.0.1e 2013年2月11日

nginx -V

nginxバージョン:gcc4.4.7によって構築されたnginx/1.5.6 20120313(Red Hat 4.4.7-3)(GCC)TLS SNIサポートが有効な構成引数:-prefix =/etc/nginx --sbin-path =/usr/sbin/nginx --conf-path =/etc/nginx/nginx.conf --error-log-path =/var/log/nginx/error.log --pid-path =/var/run/nginx.pid --http-log-path =/var/log/nginx/access.log --lock-path =/var/run/nginx.lock --http-client-body-temp-path =/var/cache/nginx/client_temp --http-proxy-temp-path =/var/cache/nginx/proxy_temp --http-fastcgi-temp-path =/var/cache/nginx/fastcgi_temp --http-scgi-temp-path =/var/cache/nginx/scgi_temp --http-uwsgi-temp-path =/var/cache/nginx/uwsgi_temp --user = nginx --group = nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module- -with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-mail- -with-mail_ssl_module- with-file-aio --with-http_spdy_module

2
Codemonkey

大幅な速度低下が予想されますが、300rpsは遅すぎます。私は最近いくつかのテストを行いました、そしてそれらはあなたにいくつかの数と関係を与えるために私の結果です:

  • http:〜30.000 rps
  • httpsキープアライブなし:〜9.000 rps
  • https w/keepalive:〜18.000 rps

あなたがする必要があること:

  • nginx.confで適切な数のワーカーを調整します(workes ==プロセッサーの数)
  • enable ssl_session_cache shared
  • パフォーマンスについてさまざまな暗号スイートをテストします(私のサイトからのtbd)
  • チェックアウト このガイド より多くのnginxベースのSSL + perf-tuning-infos

Apacheに期待する390/rps ... SCNR :)