require和readFile异步

时间:2012-08-04 03:33:52

标签: node.js

我正在使用express,我想在文件中放置一些配置(比如数据库配置,api凭证和其他基本内容)。

现在我将此配置放在JSON中,并使用readAsync读取此文件。

阅读一些代码我注意到很多人都使用不使用JSON。相反,他们使用一个通用的JS文件并在模块中导出。

这些方法之间是否存在差异,如性能?

3 个答案:

答案 0 :(得分:1)

后一种方式可能会简化版本控制,测试和构建,并且可以更轻松地为生产和开发提供单独的配置。它还允许您进行一些“预处理”,例如为常见设置定义“常量”。

在精心设计的应用程序中,配置读取的性能将完全无关紧要。

如果你使用后者,你需要练习一些规则:配置模块应该几乎完全由文字组成,只有足够的可执行代码来处理诸如区分开发和生产之类的事情。小心让应用程序逻辑蔓延到它。

答案 1 :(得分:1)

在node.js中需要同步工作,但如果在应用程序启动时加载一次配置,则不是很重要。只有在多次加载配置时(例如,对于每个请求),异步方式才真正需要。

答案 2 :(得分:0)

在node.js中,你只需要你的json文件:

config.json:

{
  "db": "127.0.0.1/database"
}

app.js:

var config = require('./config');

console.log(config);

如果您需要更全面的功能,我会使用flatiron/nconf