带有dynamodb ORM的节点MVC应用程序,包括关联

时间:2016-09-05 06:13:58

标签: node.js express sails.js amazon-dynamodb vogels

我想构建一个Node.js MVC应用程序。 我的数据存储在dynamoDB中。我正在为此寻找合适的框架。 我主要在辩论:

  • Express.js(对于控制器),使用vogels作为ORM(用于 模特),
  • 带有dynamoDB adapter的Sails.js。

我更喜欢模型之间的关联支持,因此我不需要在我的代码中自己实现它。 任何人都可以建议两种选择的道具和缺点是什么?我可以使用第二个选项在第一个选项中可以执行的所有操作但代码更少吗?还有其他建议吗?

1 个答案:

答案 0 :(得分:1)

首先,这是一个非常基于意见的问题。所以,我只想表达我的看法。这并不意味着一个比另一个好得多。

我在一些用例中使用过Vogels。我发现它非常有用。 Vogels的一些优点是: -

1)并行扫描 - 有助于提高开发人员在项目的某个阶段最有可能遇到的性能,特别是如果您要在DynamoDB中维护数百万条记录

2)支持全局和本地二级索引 - 基于查询模式,应用程序很可能需要对表进行索引。所以这个功能非常有用

3)使用Joi(Joi Link

的数据类型和验证支持

4)自动添加审计时间戳字段,例如updatedAt,createdAt

5)以UUID格式生成自动键值

用于查询和扫描操作的

6)可链接API - 您可以使用限制选项链接多个过滤条件以进行分页并对结果进行排序

7)在一个请求中加载多个模型(批量获取项目功能)

8)基本流式传输 api

9)许多功能的一些好的示例代码对开发人员非常重要