内容简介:最近工作项目有调整,需要熟悉一些前端的内容,就顺便看看node,同时边学习边总结一下。如果使用node搭建后台服务,可以直接使用http创建一个服务器对象,也阔以选择Express框架。如果只是想使用node搭建一个简单的server,可以参考这里因为我们只是示例几种启动方式,因此就选择了最简单的demo,示例所有代码参照这是最常见的启动方式
背景信息
最近工作项目有调整,需要熟悉一些前端的内容,就顺便看看node,同时边学习边总结一下。如果使用node搭建后台服务,可以直接使用http创建一个服务器对象,也阔以选择Express框架。如果只是想使用node搭建一个简单的server,可以参考 https://github.com/bihe0832/node-demo/tree/master/http 。
这里因为我们只是示例几种启动方式,因此就选择了最简单的demo,示例所有代码参照 https://github.com/bihe0832/node-demo/tree/master/setup
几种启动方式
node 启动
这是最常见的启动方式
-
命令:
node 入口js
-
事例:
➜ setup git:(master) ✗ node server.js Server running at http://127.0.0.1:3000/
-
备注:
使用node启动服务以后,应用程序的每次修改都需要停掉服务以后重启。
nodemon 启动
nodemon用来监视node.js应用程序中的任何更改并自动重启服务,非常适合用在开发环境中。
-
命令:
nodemon 入口js
-
事例:
➜ setup git:(master) ✗ npm install nodemon npm WARN deprecated duplexer3@0.1.4: Sadly, duplexer3 is no longer with us. It will be missed. > nodemon@1.18.9 postinstall /temp/1/node-demo/setup/node_modules/nodemon > node bin/postinstall || exit 0 npm WARN saveError ENOENT: no such file or directory, open '/temp/1/node-demo/setup/package.json' npm WARN enoent ENOENT: no such file or directory, open '/temp/1/node-demo/setup/package.json' npm WARN setup No description npm WARN setup No repository field. npm WARN setup No README data npm WARN setup No license field. + nodemon@1.18.9 added 223 packages from 130 contributors and audited 2238 packages in 11.378s found 0 vulnerabilities ➜ setup git:(master) ✗ nodemon server.js [nodemon] 1.18.9 [nodemon] to restart at any time, enter `rs` [nodemon] watching: *.* [nodemon] starting `node server.js` Server running at http://127.0.0.1:3000/ [nodemon] restarting due to changes... [nodemon] starting `node server.js` Server running at http://127.0.0.1:3000/ [nodemon] restarting due to changes... [nodemon] starting `node server.js`
-
备注:
从日志可以看到,当应用程序有代码修改时,不需要重启服务,刷新页面就可以看到更新后的内容
npm 启动
-
命令:
npm start
-
事例:
➜ setup git:(master) ✗ npm start > setup@1.0.0 start /temp/1/node-demo/setup > nodemon server.js [nodemon] 1.18.9 [nodemon] to restart at any time, enter `rs` [nodemon] watching: *.* [nodemon] starting `node server.js` Server running at http://127.0.0.1:3000/
-
备注:
npm start 和前面的两种启动方式并没有区别,他只是将前面的启动方式做了进一步的封装,并且提升到工程模式
pm2 启动
PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。在项目正式部署的时候一般都是使用他来管理。
-
命令:
pm2 start 入口js –watch
-
事例:
➜ setup git:(master) ✗ pm2 start server.js --watch [PM2] Applying action restartProcessId on app [server](ids: 1) [PM2] [server](1) ✓ [PM2] Process successfully started ┌──────────┬────┬─────────┬──────┬──────┬─────────┬─────────┬────────┬─────┬───────────┬──────┬──────────┐ │ App name │ id │ version │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │ ├──────────┼────┼─────────┼──────┼──────┼─────────┼─────────┼────────┼─────┼───────────┼──────┼──────────┤ │ app │ 0 │ 0.0.0 │ fork │ 0 │ stopped │ 16 │ 0 │ 0% │ 0 B │ root │ disabled │ │ server │ 1 │ 0.0.0 │ fork │ 1494 │ online │ 35 │ 0s │ 0% │ 15.5 MB │ root │ enabled │ └──────────┴────┴─────────┴──────┴──────┴─────────┴─────────┴────────┴─────┴───────────┴──────┴──────────┘ Use `pm2 show <id|name>` to get more details about an app
-
备注:
pm2的启动和前面一样没有区别,只是针对服务器环境做了一些优化,更方便做性能监控、自动重启、负载均衡等
总结
- 项目开发中,建议使用npm配置nodemon来开发调试,即方便工程迁移,同时开发时也比较便捷
- 项目部署时,建议使用pm2,优点上面已经说过了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 全栈开发入门实战:后台管理系统
- 自建-模拟JSON REST API-从入门到精通-前端必备技能-你还在等你后台API吗?
- 飞特后台管理系统 3.0:不仅仅是后台,还有商城模块
- Linux 后台运行任务 nohup 结合 & 用法以及如何精准查找进程并 kill 后台任务实践
- TIMO 后台管理系统 v2.0 发布,带来全新的项目结构,支持前后台模块分离部署!
- 电商后台设计:系统消息
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Learn Python the Hard Way
Zed A. Shaw / Addison-Wesley Professional / 2013-10-11 / USD 39.99
Master Python and become a programmer-even if you never thought you could! This breakthrough book and CD can help practically anyone get started in programming. It's called "The Hard Way," but it's re......一起来看看 《Learn Python the Hard Way》 这本书的介绍吧!