在Windows Azure中开发node.js应用程序的可移植性和灵活性考虑因素?

时间:2012-02-01 12:30:03

标签: node.js azure nosql cloud-hosting

我正在Node.js中编写一个应用程序来创建一个备用的bootstrap项目。我有一个Windows背景和Windows Azure,三个月免费试用目前似乎是开发,部署和托管项目的最简单方法。

然而,在免费试用期结束后,Windows Azure似乎变得昂贵,而且无论如何我都希望选择在非MS平台上托管,所以我有几个问题:

  1. 我可以从tutorial看到我需要一些特定于Windows的代码来导入应用程序应该监听的端口号 - 是否还有更多Windows或Azure特定代码要求的示例?
  2. 我想采用NoSQL方法进行数据存储,因为我对灵活性和性能比参照完整性或结构一致性更感兴趣 - 将Azure表包装在合理的数据访问层是否很困难可移植到其他NoSQL数据库,如MongoDB或各种云产品吗?
  3. 最后,这个包罗万象的问题 - 还有什么我应该注意的吗?

2 个答案:

答案 0 :(得分:1)

解决你的第二个问题:NPM registry中的模块可以帮助你。

首先,Microsoft最近发布了Azure SDK for node作为NPM安装模块。这有一个丰富的API,可以帮助您连接到Azure表。

对于大多数解决方案(包括MongoDB),NPM注册表中也有NoSQL客户端。

如果您保持数据访问简单,您应该能够使用各种可用的NoSQL客户端,并创建一个漂亮的小模块层,它位于您需要支持的所有客户端之上。

您甚至可以创建一个公共github存储库,并将您的辛勤工作提交到NPM registry以供其他人帮助您开发。

答案 1 :(得分:0)

我已经在Windows Azure的node.js上构建了一个应用程序,如果你坚持使用npm模块和开放平台,几乎没有锁定。

您还应该查看Microsoft的Bizspark程序 - 您可以获得两年免费+存储的2个预留实例。这是一个很棒的计划。