关于node.js开发环境和部署策略的一些问题
我是新来的节点,读一些关于它的书。 现在我认为是时候用它做一些开发的东西了。 我打算实施一个我想在云中部署的项目(AWS,Heroku,…)。
我还没有想到的是以下几点(我有一个OS X 10.7的MacBook Pro):
- 我应该使用哪种开发环境? 我想到了Aptana Studio(根据我所见,没有节点支持),并通过ssh传输文件到本地的VirtualBox CentOS 6.3机器上,该机器上有node.js和一些模块
- 在云中托pipe我的应用有什么好的部署策略吗? 例如,如果我正在使用Aptana Studio进行开发,我不认为有一个插件可以让您在AWS或Heroku云中的某个虚拟服务器上部署代码,不是吗?
提前致谢!
- 你可以也应该在你的Mac上本地开发和运行你的应用程序。 处理2台机器,2个操作系统和不断的文件传输是一个讨厌的事情,并没有任何好处。 它也削弱了好的东西,如fsevents观看文件和良好的文本编辑器集成。
- 如果你是整个IDE的东西,也许考虑https://c9.io/
- 有几个云平台即服务公司可以考虑
- 这里有一些博客文章回顾了一些PaaS产品
- 在部署方面,这些PaaS公司大部分都将与npm和github集成,因此部署最多只能使用less数几个命令。
我本身不使用IDE。 我为我的编辑只用崇高的文字。
部署过程将取决于您在哪里托pipe您的网站。 我不确定Heroku,但是使用Nodejitsu就像在terminal上运行“jitsu deploy”一样简单,就是这样。
如果您在Linux机器上(例如,不使用Heroku或Nodejitsu)自行托pipe站点,则需要考虑如何确保站点在机器重新启动后或重新启动后重新启动。 我在我的博客上写了这个。 这是可行的,但有点麻烦: http : //hectorcorrea.com/blog/running-a-node-js-web-site-in-production-a-beginners-guide
谢谢你的帮助!
在对已经发布的主题进行了大量的研究之后,我只想让你知道我的开发节点应用程序的设置现在是什么样的:
- 崇高的文本2文本编辑器与包pipe理器和下面的插件:git,nodejs,SublimeLinter(顺便说一句:有一些其他“必不可less的”插件,你不能没有?)
- iTerm 2terminal的所有控制台工作(执行节点检查器,ssh到服务器等)
- node.js,npm和我想用于我的应用程序的其他模块
在我的MacBook Pro上本地运行一切。 据我所能testing这个解决scheme,它似乎运行非常顺利,但最显着的是:FAST 🙂
关于节点部署,我考虑到Heroku和nodejitsu由于成本低,pipe理工作量less,像自动扩展等function。Heroku的唯一缺点是缺lesswebsocket支持,我打算在我的应用程序本地使用。
最好的祝福!