位置: 编程技术 - 正文

提高NodeJS中SSL服务的性能(node.js ssh)

编辑:rootadmin

推荐整理分享提高NodeJS中SSL服务的性能(node.js ssh),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs配置ssl证书,nodejs sso,node.js ssh,nodejs配置https,nodejs配置https,nodejs ssl,nodejs配置ssl证书,nodejs配置https,内容如对您有帮助,希望把文章链接给更多的朋友!

在浏览互联网时,我们都知道,通过SSL进行加密是非常重要的。在贝宝(PayPal),安全是我们的首要任务。我们使用端到端的加密,不仅只是我们的公共网站,对于我们的内部服务调用也同样如此。SSL加密技术将在很大程度上影响node.js的性能。我们已经花时间调整我们的对外服务,并充分地利用他们。下面是一些我们发现能显著地提高SSL对外性能的SSL配置调整清单。

SSL密码

开箱即用,Node.js 的SSL使用一组非常强大的密码算法。特别是,迪菲赫尔曼密钥交换和椭圆曲线算法是极其昂贵的。而且当你在默认配置中用了太多的对外SSL调用,Node.js的性能将从根本上得到削弱。为了得到它到底有多慢这个结论,这儿有个服务调用的CPU样本:

让我们重点关注一下密钥的生成:

这个调用%的时间都花在了生成密钥上!

这些密码能被改变以减少密集的计算。这个想法已经在https(或代理)得以实现了。例如:

上面的密钥已经没用昂贵的迪菲赫尔曼密钥交换。用相似的东西代替之后,在下面的样例中我们能看到显著的变化:

通过OpenSSL文档,你可以学习更多关于密码串的东西。

SSL会话恢复 如果您的服务器支持SSL会话恢复,那么你可以通过https(或代理)来传递会话。你也可以将代理的createConnection函数包裹起来:

通过给连接增加简短的握手机制,会话恢复能降低连接数的使用。

保持活动 允许代理保持活动将缓和SSL握手。一个保持活动的代理,比如agentkeepalive可以修复结点保持活动的问题,但在Node0.中它是非必须的。

另一个需要铭记在心的东西是代理的maxSockets,这个值高的话能对性能造成负面的影响。在你创建的对外连接数量的基础上控制你的maxSockets值。

提高NodeJS中SSL服务的性能(node.js ssh)

Slab的大小 tls.SLAB_BUFFER_SIZE决定了被tls客户端(服务器)使用的slab缓冲区的分配大小。它的大小默认为MB。

这些分配的区间将会扩展你的rss且会增加垃圾回收的时间。这意味着高容量将会影响到性能。把这个容量调整到一个比较低的值可以改善内存和垃圾收集的性能。在0. 版本中,slab的分配已经得到改善了,没有必须再调整了。

SSL在0.中近期的改变 测试Fedor的SSL增强版。

测试说明

运行一个作为SSL服务代理的http服务,全部运行在本机上。

v0..

v0..-pre (从主版本构建)

这没有太多的区别,但这应归于默认密码,所以让我们调整密码的代理选项。例如:

v0..

v0..-pre (从主版本构建)

正如我们所见,经过Fedor的修改,这有着巨大的区别:从0.到0.性能差不多差着2倍左右!

总结

有人可能会问“为什么不仅仅只是关掉SSL呢,关了之后它就会变得快起来”,且对于一些人来说这也是一种选择。实际上,当我问别人他们是如何解决SSL性能问题的时候这是比较有代表性的答案。但是,如果企业SSL要求的任何东西只增加不减少;且尽管已经做了很多来改善Node.js中的SSL,性能调整仍然还是需要的。我希望上述的一些技艺能够帮助你调整SSL用例性能。

nodejs的个性能优化技巧 下面是我们使用Node.js时遵循的个性能规则:1.避免使用同步代码在设计上,Node.js是单线程的。为了能让一个单线程处理许多并发的请求,你可以永远

抛弃Nginx使用nodejs做反向代理服务器 时下不少场景,都是申请一个VPS主机来托管运行Web项目的,小弟我也不例外,购买了一个小型的WinVPS使用着。在使用的过程中,面临一个问题,就是

Express.JS使用详解 安装了node(下载)之后,在你的机器上创建一个目录,开始你的第一个应用程序。$mkdirhello-world在这个目录中你将定义应用程序包,这和任何其他node的包没有

标签: node.js ssh

本文链接地址:https://www.jiuchutong.com/biancheng/374169.html 转载请保留说明!

上一篇:在NodeJS中启用ECMAScript 6小结(windos以及Linux)(nodejs怎么启动服务)

下一篇:nodejs的10个性能优化技巧(nodejs性能对比)

  • 城市公交算国企吗
  • 印花税申报缴纳错误,怎么办
  • 银行承兑汇票提前承兑收多少手续费
  • 年审和税审的区别是什么
  • 担保费能否开专票
  • 外经证预交几个点
  • 个体工商户能否开13的专票
  • 资源税征税范围有哪些
  • 企业合并相关舞弊风险有哪些
  • 微信小程序实现微信支付
  • 固定资产入账必须有发票吗
  • 企业职工福利费扣除标准
  • 季度开票超过9万个人所得税
  • 进项发票未抵扣部份开红冲后当月能抵扣吗?
  • 教育咨询发票怎么开具
  • 人防设施建设费
  • 商品期货交易会计核算
  • 开业好不好
  • 技术服务费增值税申报表填写
  • 小规模10万以下免税分录
  • 法人垫付现金的原始凭证
  • 在建工程产生废料收入的账务处理?
  • mac系统如何连接北通手柄
  • mac辅助功能键盘
  • 建筑公司合作模式有哪几种
  • 为什么浏览器自动打开
  • php的数组函数
  • 预提土增税账务处理
  • ant design pro项目构建纯净版
  • 无形资产摊销是按原值吗
  • 独立的分公司可以注册吗
  • 会计凭证出现的问题
  • 绿化公司属于哪个行业
  • mysql索引是否生效
  • 织梦网站停止使用了还侵权吗
  • 支出金额是什么
  • sqlserver 数据集字符集种类
  • mysql监控sql性能
  • 行政事业单位资产报废账务处理
  • 其他业务收入如何核算
  • 会计凭证销毁年限
  • 物流企业发生的费用包括
  • 营改增对建筑业税负的影响
  • 打官司收到对方的款,如何做账
  • 购买办公室家具
  • 长期挂账的往来款税务处理
  • 境外所得抵免限额大于境外承担的所得税税额
  • 固定资产处置款怎么入账
  • 其他应收款如何计提坏账准备
  • 教育行业的成本怎么做账
  • 净资产增长率增长说明什么
  • 委托收款的流程
  • 物流行业会计核算特征有哪些
  • 使用sql server
  • mysql注入语句
  • Mysql主从同步Last_IO_Errno:1236错误解决方法
  • 备受大家关注的成语
  • GrooveMonitor.exe是什么进程?GrooveMonitor.exe可以禁用卸载吗?
  • yum源有什么用
  • win8无法关机一直转圈
  • win7电脑启动
  • win10系统应用更新
  • 变量选择lasso
  • bat批处理命令大全
  • cocos2dx HelloWorld代码分析
  • css分页样式
  • 好用的css
  • 商务英语考英语笔译 算跨考吗
  • pm2启动nodejs
  • js实现的功能
  • javascript零基础
  • js面向对象写法
  • 深圳企业所得税税率多少
  • 水电费的增值税专用税可抵扣进项
  • 个人所得税是哪种税率
  • 收到海关进口增值税专用缴款书怎么确定库存商品的金额
  • 南京交税的标准2019
  • 宜昌市西陵区国税局局长
  • ipo上市要注意什么
  • 如何优化企业的筹资结构
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设