提高NodeJS中SSL服务的性能
2014-07-16 13:07
417 查看
在浏览互联网时,我们都知道,通过SSL进行加密是非常重要的。在贝宝(PayPal),安全是我们的首要任务。我们使用端到端的加密,不仅只是我们的公共网站,对于我们的内部服务调用也同样如此。SSL加密技术将在很大程度上影响node.js的性能。我们已经花时间调整我们的对外服务,并充分地利用他们。下面是一些我们发现能显著地提高SSL对外性能的SSL配置调整清单。
SSL密码
www.usus.cc
开箱即用,Node.js 的SSL使用一组非常强大的密码算法。特别是,迪菲赫尔曼密钥交换和椭圆曲线算法是极其昂贵的。而且当你在默认配置中用了太多的对外SSL调用,Node.js的性能将从根本上得到削弱。为了www.usus.cc得到它到底有多慢这个结论,这儿有个服务调用的CPU样本:
918834.0ms 100.0% 0.0 node (91770)
911376.0ms 99.1% 0.0 start
911376.0ms 99.1% 0.0 node::Start
911363.0ms 99.1% 48.0 uv_run
909839.0ms 99.0% 438.0 uv__io_poll
876570.0ms 95.4% 849.0 uv__stream_io
873590.0ms 95.0% 32.0 node::StreamWrap::OnReadCommon
873373.0ms 95.0% 7.0 node::MakeCallback
873265.0ms 95.0% 15.0 node::MakeDomainCallback
873125.0ms 95.0% 61.0 v8::Function::Call
873049.0ms 95.0% 13364.0 _ZN2v88internalL6InvokeEbNS0
832660.0ms 90.6% 431.0 _ZN2v88internalL21Builtin
821687.0ms 89.4% 39.0 node::crypto::Connection::ClearOut
813884.0ms 88.5% 37.0 ssl23_connect
813562.0ms 88.5% 54.0 ssl3_connect
802651.0ms 87.3% 35.0 ssl3_send_client_key_exchange
417323.0ms 45.4% 7.0 EC_KEY_generate_key
383185.0ms 41.7% 12.0 ecdh_compute_key
1545.0ms 0.1% 4.0 tls1_generwww.e78.comate_master_secret
123.0ms 0.0% 4.0 ssl3_do_write
...
让我们重点关注一下密钥的生成:
802651.0ms 87.3% 35.0 ssl3_send_client_key_exchange
417323.0ms 45.4% 7.0 EC_KEYwww.e78.com_generate_key
383185.0ms 41.7% 12.0 ecdh_compute_key
SSL密码
www.usus.cc
开箱即用,Node.js 的SSL使用一组非常强大的密码算法。特别是,迪菲赫尔曼密钥交换和椭圆曲线算法是极其昂贵的。而且当你在默认配置中用了太多的对外SSL调用,Node.js的性能将从根本上得到削弱。为了www.usus.cc得到它到底有多慢这个结论,这儿有个服务调用的CPU样本:
918834.0ms 100.0% 0.0 node (91770)
911376.0ms 99.1% 0.0 start
911376.0ms 99.1% 0.0 node::Start
911363.0ms 99.1% 48.0 uv_run
909839.0ms 99.0% 438.0 uv__io_poll
876570.0ms 95.4% 849.0 uv__stream_io
873590.0ms 95.0% 32.0 node::StreamWrap::OnReadCommon
873373.0ms 95.0% 7.0 node::MakeCallback
873265.0ms 95.0% 15.0 node::MakeDomainCallback
873125.0ms 95.0% 61.0 v8::Function::Call
873049.0ms 95.0% 13364.0 _ZN2v88internalL6InvokeEbNS0
832660.0ms 90.6% 431.0 _ZN2v88internalL21Builtin
821687.0ms 89.4% 39.0 node::crypto::Connection::ClearOut
813884.0ms 88.5% 37.0 ssl23_connect
813562.0ms 88.5% 54.0 ssl3_connect
802651.0ms 87.3% 35.0 ssl3_send_client_key_exchange
417323.0ms 45.4% 7.0 EC_KEY_generate_key
383185.0ms 41.7% 12.0 ecdh_compute_key
1545.0ms 0.1% 4.0 tls1_generwww.e78.comate_master_secret
123.0ms 0.0% 4.0 ssl3_do_write
...
让我们重点关注一下密钥的生成:
802651.0ms 87.3% 35.0 ssl3_send_client_key_exchange
417323.0ms 45.4% 7.0 EC_KEYwww.e78.com_generate_key
383185.0ms 41.7% 12.0 ecdh_compute_key
相关文章推荐
- 提高NodeJS中SSL服务的性能
- 提高NodeJS中SSL服务的性能
- Windows Azure 解决方案系列: 通过全球数据中心网络,地图服务提高了80%性能表现
- 用DOS命令控制服务来提高计算机的性能
- 使用多线程提高rest服务性能,异步处理rest服务
- 提高索引服务性能
- 提高VMware虚拟机下服务系统运行性能方法
- 提高VMware虚拟机下服务系统运行性能方法
- Windows Azure 解决方案系列: 通过全球数据中心网络,地图服务提高了80%性能表现
- Windows Azure 解决方案系列: 通过全球数据中心网络,地图服务提高了80%性能表现
- 通过预计算提高GIS服务性能
- Windows Azure 解决方案系列: 通过全球数据中心网络,地图服务提高了80%性能表现
- 设计文件系统时应尽量减少访问磁盘的次数,以提高文件系统的性能.下列各种措施中,哪些可以减少磁盘服务时间?
- 提高 Ajax 应用程序性能,避开 Web 服务漏洞
- 提高索引服务性能
- 通过预计算提高GIS服务性能
- VMware vCenter Converter 关闭SSL加密,提高35-40%性能
- 提高索引服务性能