大佬教程收集整理的这篇文章主要介绍了在部署Node.js Web应用程序时要查看的最重要的统计信息是什么?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Joyent smartMachine,并且查看他们提供的分析选项有点压倒性。有这么多不同的选择和配置,我不知道每个分析真正服务的目的。对于下面的问题,我很乐意任何答案,无论是Joyent的Cloud Analytics还是完全一般的。
问题一
现在,我主要关心的是找出我的应用程序如何利用我运行的服务器。我想知道我的应用程序是否有适当的资源分配给它。它收到的请求数量是否使服务器处于过载状态,还是需要额外的资源?为了这个目的,对于NodeJS应用程序来说,什么分析很重要? (如果有差异,则在不同的服务器上使用MongoDB和redis)
问题二
管理正在生产的服务器时,其他统计信息通常非常重要。我习惯于运行一次以执行某些特定操作的程序(例如,一旦计算出图像就完成运行的光线追踪器),而不是连续运行并与许多客户端交互的网络应用程序。我相信有很多事情对长期服务器管理员来说是不明白的,不是像我这样的新手。
问题三
在特别处理NodeJS时要看什么重要?在处理NodeJS与更多标准服务器系统的单线程事件循环时,什么是统计/分析变得特别重要?
我还有其他问题,关于数据库如何进入方程式,但我认为现在足够了…
几个事实。
>节点不能处理大的v8堆,当它增长超过200mb时,您将开始看到增加的cpu使用率
>节点总是似乎泄漏内存,或者至少增加大堆大小,而不实际使用它。我怀疑内存碎片,因为v8分析或valgrind显示js空间和驻留堆中没有泄漏。早期0.8在这方面很糟糕,RSS可能是1GB,50MB堆。
悬挂请求很难跟踪。我们写了我们的中间件来监控这些,特别是因为@R_759_9616@程序是基于长期投票的
我的建议
>每台机器使用多个实例,每个cpu至少使用1个。与haproxy,@L_262_16@等等与会话亲和力平衡
>写入midleware来报告挂起的连接,即代码从未响应或延迟超过阈值的连接
>经常重启实例,至少每周
>写入轮询器,每分钟打印一次具有进程模块的内存统计信息
>使用supervisord和fabric来简化流程管理
以上是大佬教程为你收集整理的在部署Node.js Web应用程序时要查看的最重要的统计信息是什么?全部内容,希望文章能够帮你解决在部署Node.js Web应用程序时要查看的最重要的统计信息是什么?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。