【问题标题】:Shared customer system architecture共享客户系统架构
【发布时间】:2018-11-24 18:26:52
【问题描述】:

关于如何构建系统的一般性问题。

我正在考虑构建一个允许企业登录和管理其客户(在特定市场内)的网络系统。

现在我希望他们只需访问我们的网站并单击登录,一旦他们这样做,他们就会登录到他们的帐户并查看他们的客户数据。

我遇到的问题是如何构建数据库/应用程序。

第一种选择可能是将“他们的”系统托管在他们自己的服务器上,但这很昂贵。

第二个选项是将所有内容托管在同一个数据库中,并在客户表中定义他们所属的公司,并将查询编码为仅查找具有相同公司 ID 的客户。

第三种选择是将相同的应用程序文件托管在同一 Web 服务器上,但定义每个客户的逻辑,然后连接到他们自己的数据库(托管在同一服务器上但在不同的数据库下)。

第二个选项是最简单的,但我不喜欢很多不同的企业客户数据在同一个表中,对我来说它应该是分开的。

所以问题是构建这样一个系统以提供最佳安全性同时降低成本的最佳方法是什么,例如不是每个公司都有服务器吗?

【问题讨论】:

    标签: database-design web-applications server architecture


    【解决方案1】:

    一个数据库服务器上可以有多个数据库。全部由不同的用户分开。

    您可以设置一个数据库集群(以实现高可用性),并为每次安装提供集群中的一个数据库。

    还将 docker 和 rancher 视为虚拟化平台。您可以在同一硬件上启动多个站点,同时将它们全部分隔在不同的网络中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-23
      • 1970-01-01
      • 2021-05-20
      • 2010-12-17
      • 1970-01-01
      • 1970-01-01
      • 2013-03-23
      • 2022-08-20
      相关资源
      最近更新 更多