SaaS 架构 - 数据污染



与家装行业的初创公司合作。 它是一个SaaS模型 - 多租户系统。 每个帐户都是唯一标识的,所有客户、项目和其他数据都使用唯一的帐号进行标识。 我们使用 MVC 框架,查询在用户登录时使用帐户的会话。 随着我们的不断发展,我不断重新思考我所做的事情 - 担心交叉污染和其他多租户问题。

是否有任何好的"最佳实践"链接或已经完成了我迄今为止所做的事情? 我认为我的担忧是一件好事,因为我知道数据、结构等等。 我觉得这总比不关心要好。

我还在一家开发SaaS产品的公司工作多年。

你的思维方式是正确的。

只要数据在逻辑上由属于特定用户的相应唯一 ID 分隔,您就走在正确的道路上。

您可以通过为每个客户创建单独的数据库/架构来分离数据,并将它们彼此隔离。

如果您真的担心您的服务器被黑客入侵,那么您可以尝试将多个服务器中的敏感数据分开,这样您就不会将所有数据集中在一个地方。这将需要更复杂的维护程序,必须为每个系统更新更新每个服务器,甚至不谈论这种架构的成本。

您始终可以扩展和创建物理分离,其中某个数据可能位于另一个数据库服务器中,但我认为在大多数情况下虚拟划分数据是可以的 - 如果做得好。

最新更新