假设 1 个网站需要 10 个数据库表才能工作,我想要一个包含 40.000 多个网站的数据库池。
哪个选项对服务器性能更好?
1) 400 个数据库每个有 1000 个表?
2)4000个数据库每个有100张表?
更新:我看到我需要提供更多细节,抱歉我尽可能多地问简单的问题。站点将基于带有http://wordpress.org/extend/plugins/hyperdb/ 的wordpress 多站点
具有 10 个数据库表的 1 个网站通常不会通过 6-7 mb 作为总数据库信息。将有 9-10 个重磅网站,其中包含重要的数据库信息,我会将它们放在一个特殊的数据库中。(比方说 4096 数据库,96 保留给 vip,重站点并在 4000 数据库中拆分所有其他站点)
服务器是:http : //www.wiredtree.com/managedhybrid/ 到达某个时间点后,我计划转移到基于raid10 15k RPM SAS mysql 光盘和不同媒体光盘的纯专用服务器
所以有 40.000 个站点,但它们都共享相同的 php 文件,只是不同的数据库和不同的上传文件夹。这就是 wordpress.com 的工作方式。相同的规则,但我的网站不会是博客。
请询问您还需要什么其他信息,我会尽力解释更多。如果我违反任何规则或其他事情,我非常抱歉。
(也很抱歉英语不好:P)
性能不应该是一个问题:安全性、一致性、数据完整性应该是
安全性:如果每个网站都有一个数据库,这意味着该网站的数据是私有的和独立的。所以有 40000 个数据库,每个数据库有 10 个表。
一致性:管理 4 万个网站需要完全的一致性。为什么选择 400x1000 或 4000x100?你将如何分开表格?您如何知道哪个站点使用哪个 DB 中的哪组表?
数据完整性:如果您恢复一个数据库,您是否真的要重置另一个 399 或 3999 网站的数据?
所以:40k 数据库,每个网站一个。
最后,你有 4 万个网站还是过早优化?