【问题标题】:Is the latest mongodb native driver mature enough to use?最新的mongodb原生驱动够成熟可以用吗?
【发布时间】:2012-04-27 23:58:34
【问题描述】:

最新的 mongodb 原生驱动程序是否足够成熟,可以在生产环境中与 GridFS 一起使用,或者作为大型项目中的规范使用?

参考http://mongodb.github.com/node-mongodb-native

我想考虑快速变化的惯例,而不是技术的成熟度。简而言之,选择一个版本作为高配置生产环境的规范是否安全?

我对该技术的有限经验不允许我确定在锁定规范场景中使用它是否安全,甚至根据长期支持(也称为 Ubuntu)锁定版本,其中修复/安全补丁可以反对版本更改。

【问题讨论】:

  • 我考虑提供讨论的链接,这些链接可能会引起我的关注,但我担心会有一些附带话题会影响上述问题。事实是,可以替换以下堆栈中的三个分支中的任何一个:node.js、mongodb 和 gridfs,而上述问题将不再是一个问题。所以也许让整个问题变成修辞 - 但希望不是......我把上面的问题留给你,让它独立存在。
  • 任何人都可以看到Microsoft Open Technologies。我想知道如何让他们注意节点 mongodb 本机驱动程序不支持从 gridfs 读取源自文本文件的窗口这一事实。 node.js 社区似乎忽略了这个问题。 c#驱动没有这个问题。

标签: node.js mongodb gridfs


【解决方案1】:

是的。该驱动程序已经足够成熟,可以在生产中使用。它已经在许多高调的 Node.js 部署中使用,并支持与现有 MongoDB 驱动程序相当的功能集。它也通过了与其他 MongoDB 驱动程序相同的测试,并且性能足够好。

在 MongoDB 方面,不应该担心快速变化的约定。该 API 在过去的几个版本中显示出稳定性,并且在许多版本中没有引入任何重大更改。

【讨论】:

  • 高调的XYZ用它是一回事,所以它一定对每个人都有好处,但考虑一下:奶牛有4条腿,桌子有4条腿,所以所有桌子都必须是奶牛...请在此处查看 christkv 的回复MongoDB GridFS - Is it filename or fileName。他似乎认为必须始终使用最新的驱动程序。并且该驱动程序可能不打算与其他平台等一起使用。
  • 对不起,我不能接受这个答案,因为它没有解决问题的所有三个方面。 node.js、mongodb 和 gridfs。我确实喜欢关于 MongoDB 的第二段答案,但第一段可以被认为是 node.js 有偏见的说法。我也许应该指出客观性是回答这类问题的关键,但我认为这是隐含的;-)
【解决方案2】:

您确定要在您所描述的那种环境中使用年轻的技术吗?一个项目需要非常成熟才能开始对旧版本进行长期支持。

此外,在开源世界中,您很少看到项目本身提供任何形式的长期支持。相反,您有像 Canonical 和 RedHat 这样的公司将补丁向后移植到他们的特定版本,即 MySQL。 10Gen 是 MongoDB 和 mongodb-native 背后的公司,他们是询问长期支持的合适人选。

我对 mongodb-native 的经验是,这是一个快速改进的项目,您确实需要跟上正在发生的事情。我不想支持任何 mongodb-native 版本在未来 n 年内一成不变的东西。

话虽如此,如果您准备好跟上它们的快速发展步伐,那么 MongoDB、Node.JS 和 mongodb-native 肯定已经为生产做好了准备。

【讨论】:

  • 谢谢你,马丁。您的回答没有解决我的问题的 gridfs 部分,但它似乎传达了问题所要求的客观性。
  • 我在我的 web 应用程序中使用 GridFS 的经历参差不齐。我在 mongodb 邮件列表上看到一些帖子建议如果您的文件小于 16MB(文档大小),则应考虑不使用 GridFS。
  • 我在 MongoDB 和 GridFS 中使用过 C#,没有任何抱怨。但是,我在使用本机节点驱动程序读取相同文件时遇到问题,这似乎不喜欢 Windows 文件。您的网络应用使用哪种语言?
猜你喜欢
  • 2012-05-09
  • 1970-01-01
  • 1970-01-01
  • 2011-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多