【发布时间】:2021-03-15 10:28:06
【问题描述】:
我们正在开发具有 1000 个虚拟主机的聊天应用程序。每个虚拟主机一个公司。我们正在为超过 20 个虚拟主机而苦苦挣扎,服务器有时会变慢。单个节点中可能有多少虚拟主机。添加1000个虚拟主机时服务器的配置是什么。
操作系统:Centos 8 版本:ejabberd20.04 数据库:MySql
如果能帮到我,我会很感激的。
【问题讨论】:
标签: mysql virtualhost ejabberd
我们正在开发具有 1000 个虚拟主机的聊天应用程序。每个虚拟主机一个公司。我们正在为超过 20 个虚拟主机而苦苦挣扎,服务器有时会变慢。单个节点中可能有多少虚拟主机。添加1000个虚拟主机时服务器的配置是什么。
操作系统:Centos 8 版本:ejabberd20.04 数据库:MySql
如果能帮到我,我会很感激的。
【问题讨论】:
标签: mysql virtualhost ejabberd
我怀疑操作系统会在试图让十几个虚拟机满意的情况下自己绊倒。 (你发现只有 20 个。)这是一台强大的机器吗?我会使用带有单个 MySQL 实例的单个服务器,并在许多表中将 company_id 作为 PRIMARY KEY 的一部分。
(这个问题在 dba.stackoverflow.com 中可能更具吸引力。这个 stackoverflow.com 更倾向于编码。)
相比之下,MySQL 本身最多可以处理一百个左右的真正并发 查询。几千个人聊天没有问题,因为他们真的不会同时做任何事情。
使用 VM,您有以下层:
使用单个 MySQL 实例:
此外,让我们看看 RAM 使用情况。
这意味着一千个虚拟机可能会占用 TB 的 RAM 以实现最低限度的使用。同时,处理相同流量的整合聊天平台(我估计)大约需要 4GB。
(如果你有不可告人的理由想做虚拟机,请说出来。)
【讨论】: