NodeJS 服务器负载均衡方案(性能优化)

2018-12-20  本文已影响0人  钨丝灯

大前端趋势越来越有趣,以脚本编辑为主流的前端构建方式(JavaScript,TypeScript)已经在前端阵营中从pc端,进军到Native的混合开发(ReactNative,Weex),现在Google又推出了Pwa能够通过JS脚本编写直接构建成为原生的Native项目的工程框架,并且目前微软,苹果也都发表声明将支持Pwa的使用。

使得脚本语言有了越来越多的用武之地,更多的渲染手段,更多的打包方式,让前端的开发能够有很多灵活的方式进行项目组装,模块的重用。webpack,gulp的灵活使用往往能使得一个工程支持多个项目,而且还能同样保证项目的结构整洁清晰。

这些项目很多都会部署在nodejs 服务上,那么进入主题如何能使得nodejs 服务能够更稳定的运行,由于nodejs是单线程服务,在运行过程中首先是进程的优化使用。然后就是通过nodejs对服务器性能的监听,os 模块提供了一些操作系统相关的实用方法。

// os.freemem() 方法以整数的形式返回空闲系统内存的字节数.

// os.tmpdir() 方法返回一个字符串, 表明操作系统的默认临时文件目录.

// os.cpus() 方法返回一个对象数组, 包含每个逻辑 CPU 内核的信息.

通过os模块判断服务器性能,当服务器性能不足时,
nodejs功能强大且多样,不只是可以实现服务器端与客户端的实时通讯,另一个功能是用来执行shell命令

var process = require('child_process');
// 然后,调用该模块暴露出来的方法exec 执行shell  命令开启新的docker 启动新的nodejs 服务进行负载均衡处理。
process.exec('shutdown -h now',function (error, stdout, stderr) {
        if (error !== null) {
          console.log('exec error: ' + error);
        }
});
上一篇下一篇

猜你喜欢

热点阅读