首页 > 解决方案 > 我应该为不同的客户创建更多的数据库 - Meteor 吗?

问题描述

我正在使用 Metoer 和 mysql 来构建我的网络应用程序。我可能有多个客户。每个客户都有大部分相同的逻辑。它们具有相同的数据结构,但有些表会很大。不同的客户是完全分开的。

我只是想知道我是否可以分别为客户端创建不同的数据库(每个数据库都有相同的表,但我不必通过加入不同的客户端来获取数据。),还是只有一个数据库?我不知道哪种方式更好。

我认为使用单独的数据库有利于数据管理。但我担心表现。

如果我只为多个客户端使用一个数据库。有些桌子会非常大。也会影响性能。

有任何想法吗?

标签: mysqldatabaseperformancemeteorwebsocket

解决方案


我认为这主要取决于您的数据库服务器的资源。最重要的是内存。您可以调整一些配置设置以提高性能,当然还有性能监控应用程序可能会有所帮助。就个人而言,我不会为每个客户创建一个新的数据库。我可能会选择带有 innodb_file_per_table 选项的 InnoDB 来将每个表存储在自己的文件中。除此之外,我会依靠监控软件提出提高效率的建议。

https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_file_per_table

对于性能监控,请查看集群控制。他们提供免费版本。

https://severalnines.com/product/clustercontrol/performance-management


推荐阅读