ruby-on-rails – EC2中的SSL缓慢
我们已将rails应用程序部署到EC2.在我们的设置中,我们在循环DNS后面的小实例上有两个代理.这些运行nginx负载平衡器用于动态增长和缩小的Web服务器群.每个Web服务器还运行带有一组mongrels的nginx.这里的nginx处理静态内容并负载平衡杂种. 无论如何,我们的流量大小都是HTTPS.我们有2个代理人负责SSL.我注意到这些实例上的网络吞吐量仅为60 Mbps左右.相比之下,在测试中,我可以通过常规HTTP在小型实例上始终获得700 Mbps.实际上,这与我在大型实例上可以得到的相同.类似于Right Scale的人在their testing中得到的东西.(亚马逊说,一个小的网络I / O得到“温和”,而一个大的得到“高”.如果我不得不推测,我认为这只是他们说那里的方式每个物理盒共享一个网卡的实例更小.我不确定这是否意味着大型网络接口会有专用的网络接口,但我会怀疑它.) 在测试中,我能够获得一个大型实例来获得大约250 Mbps的SSL.这告诉我,CPU或其他资源是瓶颈.但是,我们的监控图表并未显示代理上的CPU特别繁忙. 我的问题是: >由于CPU正确而我的监控图是错误的,我对SSL的直觉是否较慢?或者其他一些资源可能是限制因素? 我很想知道任何类似的设置.我们对他们的弹性负载均衡器进行了修改,但我认为这基本上使我们处于与上面#3相同的情况.有没有其他人转向ELB并发现它值得吗? 最佳答案
您使用的是nginx提供的SSL会话缓存吗?这可以帮助nginx节省周期,不断重新加工加密.见http://wiki.nginx.org/NginxHttpSslModule#ssl_session_cache
您使用什么监视来确定您的CPU使用情况? SSL通常非常占用CPU. 我会将SSL代理保留为指定层,这样您就可以将协商ssl的成本与其他问题分开. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- img HTML标记不尊重HTTP刷新标头(但在浏览器中加载图像URL)
- python – Tornado,Nginx,Apache ab – apr_socket_rec
- 使用NGINX调整数据传输成本
- nginx – PHP-FPM停止响应并死亡
- nginx – 基于文件夹结构的动态虚拟主机设置
- Nginx未知limit_req_zone
- nginx 出现504 Gateway Time-out的解决方法
- ruby-on-rails-乘客nginx:在子目录中托管Rails应用程序
- asp.net – 通过nginx和ServiceStack对fastcgi-mono-serve
- ruby-on-rails – 为什么ruby栏杆需要美洲狮或独角兽?