【问题标题】:integration between mvc4 application and mongo dbmvc 4 应用程序和 mongodb 之间的集成
【发布时间】:2012-10-18 21:20:44
【问题描述】:

我目前正在开发 asp.net mvc4 Web 应用程序。应用程序的一部分,用户可以登录和浏览网站等。网站的数据存储在sql server数据库中,包含用户信息等。

网站的一项新功能是让所有用户都可以将 cmets 添加到网站上显示的特定产品中。由于可能有数十万客户和数千种产品,因此数据量很大。

所以我已经开始查看此数据的 NoSql 选项,而不是将其存储在关系 sql 服务器数据库中。我一直在看Mongo Db。我的第一个问题,这是我采取的正确方法吗?

下一个话题,c#/.net 与 mongo 数据库集成有多容易。我以前没有使用过这个,所以我在这方面的知识很差。理想情况下,我会根据特定的产品标识符查询(为了获得正确的术语)用于 cmets 的 mongo db。我想我可以编写一个查询样式来获取这些数据。

我的下一个问题是关于 mongo db 的冗余。使用 sql server,如果主数据库服务器出现问题,我有一个故障转移服务器。 mongo 是否有类似的概念或它是如何工作的?我的考虑是让 mongo 与 sql server 数据库在同一台服务器上运行。 mongo db 中的数据不会是关键任务,但 sql server 中的数据是。我的 Web 应用程序将在负载平衡环境中的多台服务器上运行。

mongo db 可以轻松移动到另一台服务器吗? IE。它可以扩展多少。甚至可以将其中的数据复制到另一个 mongo db 吗?

感谢我的问题属于初学者标准,但我目前正在研究该主题,因此非常有用。

【问题讨论】:

    标签: c# .net asp.net-mvc mongodb nosql


    【解决方案1】:

    只要您配置了一些缓存,Sql 服务器就足以容纳 cmets。 Sql Server 的优点在于外键的数据完整性以及查询能力。

    但是,在 C# 中使用 Mongo 并不是什么大问题。有一点学习曲线,但这是学习任何新技术的过程。

    连接和使用 MongoDB

    MongoDB 有官方驱动程序和 NuGet 包供您使用。 http://www.mongodb.org/display/DOCS/CSharp+Language+Center 了解更多信息。

    冗余

    Mongo 支持副本集,您的第二个服务器将模仿来自第一个服务器的所有数据。可以在此处找到有关设置的信息:http://docs.mongodb.org/manual/tutorial/deploy-replica-set/ 应该注意的是,MongoDB 中的查询与 Sql Server 中的查询略有不同。

    现在我个人在我的一个企业应用程序中使用 mongoDB,但作为经验法则,我会说:如果您不是绝对需要使用它,那么坚持使用一个数据库引擎可能会更好。大多数情况下,您只需要管理一个数据库引擎。不过只是我的看法。也许 redis 用于缓存?

    【讨论】:

      【解决方案2】:

      如果您没有硬件内存问题(您可以购买大量内存,您将需要)Mongo 可以成为您的解决方案。

      【讨论】:

        【解决方案3】:

        事情是在 mongodb 设计中你会做一种非规范化......

        在我看来,成千上万的用户案例你的 sql 服务器就足够了......在你的数据库设计中做更多的非规范化并尝试实现良好的缓存设计......

        你说你是 mongodb 的新手......所以会有一个学习曲线...... 投入更多的内存和 CPU,直到您拥有数百万用户...

        为了安全地使用 mongodb,您至少需要 3 台服务器

        也请检查此链接

        is this the optimal minimum setup for mongodb to allow for sharding/scaling?

        【讨论】:

          【解决方案4】:
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2017-06-01
          • 2011-07-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多