第四次迭代

最后更新于:2022-04-01 05:38:20

在我们解决了服务器本身的功能、性能和可靠性的问题后,接着我们需要考虑一下代码部署的问题,以及服务器控制的问题。 ## 设计 一般而言,程序在服务器上有一个固定的部署目录,每次程序有更新后,都重新发布到部署目录里。而一旦完成部署后,一般也可以通过固定的服务控制脚本启动和停止服务。因此我们的服务器程序部署目录可以做如下设计。 ~~~ - deploy/ - bin/ startws.sh killws.sh + conf/ config.json + lib/ daemon.js server.js ~~~ 在以上目录结构中,我们分类存放了服务控制脚本、配置文件和服务器代码。 ## 实现 按以上目录结构分别存放对应的文件之后,接下来我们看看控制脚本怎么写。首先是`start.sh`。 ~~~ #!/bin/sh if [ ! -f "pid" ] then node ../lib/daemon.js ../conf/config.json & echo $! > pid fi ~~~ 然后是`killws.sh`。 ~~~ #!/bin/sh if [ -f "pid" ] then kill $(tr -d '\r\n' < pid) rm pid fi ~~~ 于是这样我们就有了一个简单的代码部署目录和服务控制脚本,我们的服务器程序就可以上线工作了。
';