微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当我启动基于node.js的站点时,是否有清单?

我正在用node.js建立我的第一个站点,我很好奇是否有一个我应该完成的所有事情的核对清单.在开发中,当我的数据库调用中不期望某些值时(使用Mongoose),我的站点将会死亡(例如节点段错误).

我也将在已经安装了Apache的VPS上使用它,所以我能够同时运行或者我需要为此寻找其他东西吗?

基本上一旦它上升,我想继续保持,我想知道在这之前我应该​​知道的任何标准预防措施.

谢谢!

解决方法

我目前处于类似情况(即将在私有VPS上部署我的第一个应用程序),这是我提出的列表:

1-错误记录:我在这里使用了一个简单的WriteStream,没什么太花哨的.

var fs = require('fs');
//You might want to specify a path outside your app
var file = './log.log';
var logger = fs.createWriteStream('./log.log');
app.configure(function(){
    //...
    app.set(express.logger({stream:logger}));
    /...
});

2-使用Forever确保脚本连续运行.是的,他们有很多其他的解决方案(例如使用daemon),但我现在已经使用了一段时间,从来没有遇到任何问题.

3-考虑设置管理界面.这实际上是我的一个要求,所以我继续smog,看起来非常好,特别是对你的客户:).

4-如果永久使用,可以使用Monit监视其状态.请参阅this blog post获取基本设置.

5-如果您使用的是Mongo,请考虑制定数据的备份策略.这个页面very good starting point.

请注意,此列表不包含有关多应用程序,多机器或多核支持的任何信息.

如果多应用程序支持您感兴趣,Nginx似乎是一个值得信赖的解决方案. This (brilliant) SO answer将帮助您进行设置.

如果你有许多备用机器可供使用,node-http-proxy是由nodejitsu开发的,它允许你只暴露一台机器并对其余机器进行反向代理.

如果您正在寻找多核支持,cluster与节点捆绑在一起,因此您可以生成N个不同的进程(N是您拥有的核心数)并让它们监听共享端口.

而且,既然我们都喜欢听一个好听的故事,这里有一些关于nodejs / mongodb在生产中使用的帖子和经验教训:
1- Lessons learned from launching i.TV
2- Using Mongodb for 2+ billion documents on craigslist

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐