【问题标题】:Pros and cons to create separate databases for each company [closed]为每家公司创建单独数据库的利弊[关闭]
【发布时间】:2015-09-21 01:52:05
【问题描述】:

我应该开发一个支持多家公司的企业级 ASP.NET Web 应用程序。

为每家公司创建单独的数据库有哪些优点和缺点?一台服务器支持连接多个数据库会不会非常耗费资源,或者最好只有一个数据库?假设我有 2000 家公司,每家公司都有 100 名员工。

在这种情况下设计系统的最佳方法是什么?

【问题讨论】:

  • 您当然应该知道这将是基于意见/过于宽泛?!
  • 你肯定知道他知道....? :)
  • 一个数据库在各个方面都更好,除了一个:数据安全。当一个错误将一个客户的数据暴露给另一个客户时,您的客户会有多沮丧?您是否会冒着在未来以牺牲业务为代价来节省时间和金钱的风险?权衡风险并做出选择。
  • 如果您投反对票,请详细说明我很乐意改写/无论如何,我们需要对给定技术堆栈有相关经验的人的建议
  • @tanner:我有自己的意见,所以我不只是在寻找其他意见,而是需要基于给定技术的强有力论据的意见,例如 IIS 为每个 webapp 分配特定进程,它们是否会提供这样的负载,将在多个数据库的情况下,所需和分配的 ado.net 连接相关资源(如池/缓存)能够提供如此数量的连接,这需要多少内存? (IIRC 每个数据库都有自己的连接池)

标签: c# asp.net sql-server entity-framework-5 iis-7.5


【解决方案1】:

您可能对以下链接感兴趣:

Multi-Tenant Data Architecture

Stack Exchange

SO

【讨论】:

    【解决方案2】:

    优点:查询速度更快;更好的整体性能、安全性和可扩展性;更轻松地对每个单独的数据库进行微调,更轻松地进行部署和故障排除。

    缺点:维护 2000 个备份作业

    【讨论】:

      猜你喜欢
      • 2017-02-17
      • 1970-01-01
      • 1970-01-01
      • 2013-07-02
      • 1970-01-01
      • 2013-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多