曾静的博客

但行好事,莫问前程.

嗨,我是曾静 (@devzeng),目前暂居深圳。


这是我用来记录平日学习笔记的地方,欢迎您的访问.

使用NSSM在Windows服务器上部署Node.js应用

node-logo.png

最近使用Node的Express框架做了一个简单的应用,原本是打算部署到CentOS服务器上面的,后来由于种种原因只能部署到Window的服务器上面了。Node.js在Linux上面部署非常的方便,可以使用forever或者pm2来做这个事情,而且使用起来非常的简单,后续有机会会单独介绍如何使用,在Windows下就是稍微有点麻烦了,这两个组件都不支持。

找了一些资料发现了nssm这个工具,部署超级简单,而且会监控你安装的node服务,如果node挂了,nssm会自动重启它。下面记录下部署的步骤:

(1)下载安装nssm

当前最新的NSSM版本是2.24,可以到官网上下载最新版本。下载地址是https://nssm.cc/release/nssm-2.24.zip

(2)安装服务

1)打开终端根据操作系统的位数(32/64)进入到对应的文件夹下:

cd F:/nssm-2.24/win32

nssm的使用方式如下:

nssm install servername //创建servername服务
nssm start servername //启动服务
nssm stop servername //暂停服务
nssm restart servername //重新启动服务
nssm remove servername //删除创建的servername服务

2)执行创建服务的命令

nssm install hbtoutiaoapi

其中hbtoutiaoapi这个是创建的Windows服务的名称,命令执行成功之后会弹出一个对话框,如下图所示:

nssm-install.png

说明:

  • ①Path:指的是node.exe的路径
  • ②Startup directory: 指的是启动的文件的路径
  • ③Arguments: 指的是启动的文件的名称

总的说来其实就是相当于执行了node.exe E:\hbtoutiaoapi\bin\www这个命令。填写完成之后点击Install service就行了,然后在系统的服务里面就可以看到了。在浏览器中访问http://localhost:3000,如下图所示:

preview.png

参考资料

1.《Node.js官网》

2.《NSSM - the Non-Sucking Service Manager》

3.《使用nssm在windows服务器上部署nodejs》

最近的文章

Mac上Docker的安装和使用初探

Docker 是个划时代的开源项目,它彻底释放了虚拟化的威力,极大提高了应用的运行效率,降低了云计算资源供应的成本,同时让应用的部署、测试和分发都变得前所未有的高效和轻松!Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的一次革新,并于2013年3月以 Apache 2.0 授权协议开源,主要项目代码在 GitHub 上进行维护。Docker 项目后来还加入了 Linux 基金会...…

Docker继续阅读
更早的文章

iOS中KV数据库LevelDB的编译和使用

LevelDB是Google公司重量级工程师Jeff Dean和Sanjay Ghemawat发起的开源项目。LevelDB是一个持久化存储的KV系统,和Redis这种内存型的KV系统不同,LevelDB不会像Redis一样狂吃内存,而是将大部分数据存储到磁盘上。目前能够支持billion级别的数据量,在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计。LevelDB开源并托管在GitHub上,项目的地址是:https://github.com/google/leveldb。有个...…

iOS继续阅读