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

在Windows Azure中开发node.js应用程序的可移植性和灵活性考虑因素?,node.js,azure,nosql,cloud-hosting,Node.js,Azure,Nosql,Cloud Hosting,我正在Node.js中为一个空闲的引导项目编写一个应用程序。我有一个Windows背景,WindowsAzure有三个月的免费试用期,目前看来是开发、部署和主持该项目的最简单方式 然而,在免费试用期到期后,Windows Azure似乎变得越来越昂贵,无论如何,我希望能够选择在非MS平台上托管,因此我有几个问题: 我可以从中看出,我需要一些特定于Windows的代码来导入应用程序应该侦听的端口号-是否还有更多关于Windows或Azure特定代码要求的示例 我想采用NoSQL方法进行数据存储,因

我正在Node.js中为一个空闲的引导项目编写一个应用程序。我有一个Windows背景,WindowsAzure有三个月的免费试用期,目前看来是开发、部署和主持该项目的最简单方式

然而,在免费试用期到期后,Windows Azure似乎变得越来越昂贵,无论如何,我希望能够选择在非MS平台上托管,因此我有几个问题:

  • 我可以从中看出,我需要一些特定于Windows的代码来导入应用程序应该侦听的端口号-是否还有更多关于Windows或Azure特定代码要求的示例
  • 我想采用NoSQL方法进行数据存储,因为我对灵活性和性能比对引用完整性或结构一致性更感兴趣-是否很难将Azure表封装在数据访问层中,从而可以合理地移植到其他NoSQL数据库,如MongoDB或各种云产品
  • 最后,一个通盘考虑的问题——我还有什么需要注意的吗

  • 解决您的第二个问题:中有一些模块可以在这里帮助您

    首先,微软最近发布了NPM安装模块。这有一个丰富的API,可以帮助您连接到Azure表中

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

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


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

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

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