Node是怎么部署的
Node.js 是一种基于 Chrome V8 引擎的 JavaScript 运行环境,可用于开发服务器端应用程序。因此,部署 Node.js 应用程序的方式与部署其他服务器端应用程序的方式类似,一般需要进行以下几个步骤:
- 选择合适的云服务提供商
选择一家可靠的云服务提供商,例如 AWS、Google Cloud、Microsoft Azure 等,注册并创建一个云服务器实例。
- 安装 Node.js
在服务器上安装 Node.js 运行环境,可使用 Node.js 官方提供的安装包或使用包管理器(例如 apt-get、yum 等)进行安装。
- 部署应用程序代码
将编写好的 Node.js 应用程序代码上传到服务器上,可使用 Git、FTP、SCP 等文件传输方式进行上传。部署时需要注意应用程序的依赖关系,一般可以使用 npm 或 yarn 等包管理工具来管理依赖关系。
- 配置服务器
根据应用程序的需要,配置服务器环境变量、端口号、域名等相关参数。可使用 Nginx、Apache 等反向代理工具来进行负载均衡、静态文件服务等操作。
- 启动应用程序
在服务器上运行 Node.js 应用程序,可使用 node 命令或使用类似 pm2 的进程管理工具来管理应用程序的运行。
- 监听和维护
监测应用程序的运行情况,记录日志、监控异常、处理错误等,保证应用程序的稳定运行。
以上是一个基本的 Node.js 应用程序部署流程,具体的部署方式还需要根据应用程序的需要进行调整。另外,也可以使用 Docker、Kubernetes 等容器化部署方式来进行 Node.js 应用程序的部署。
pm2
PM2 是一个 Node.js 应用程序的进程管理器,可以帮助我们管理 Node.js 应用程序的启动、停止、重启、日志管理等操作。PM2 守护进程的原理可以简单概括为以下几点:
- 启动进程:PM2 可以启动多个 Node.js 进程,每个进程都会占用一个端口号,同时也会分配一个进程 ID。
- 监控进程:PM2 会监控每个进程的运行状态,包括 CPU 占用率、内存占用率、请求响应时间等指标。
- 定时重启进程:当进程出现异常或内存占用率、CPU 占用率超过预设阈值时,PM2 会自动重启该进程,保证进程的稳定运行。
- 日志管理:PM2 会自动记录每个进程的运行日志,包括错误日志、访问日志等,方便开发者进行调试和错误排查。
- 进程间通信:PM2 支持进程间通信,可以在不同的进程之间进行消息传递,方便在多个进程之间共享数据和状态。
总之,PM2 守护进程的原理是通过对 Node.js 进程的启动、监控、重启和日志管理等操作进行自动化管理,提高了 Node.js 应用程序的可靠性和稳定性。
pm2原理
基于 Node.js 的 Cluster 模块实现的。Node.js Cluster 模块允许将单个 Node.js 进程分裂成多个子进程,每个子进程都可以独立地处理请求,从而提高应用程序的并发处理能力。
架构图
要理解pm2就要理解god和santan的关系,god和santan的关系就相当于盖娅和黑底斯在pm2中的01世界中,每一行代码每一个字节都安静的工作god就是Daemon进程 守护进程,重启进程,守护node程序世界的安宁,santan就是进程的毁灭者,异常进程的退出,杀死进程,毁灭进程等工作,都是由这位大哥操手。