我们目前在自己的服务器上有 1 个主数据库,在应用服务器上有从属数据库。
应用程序执行非常频繁但轻量级的更新(如增加计数器),偶尔(几分钟一次)执行大量选择(这是应用程序最重要的部分)。当应用程序仅连接到主数据库时,没有性能问题。随着从属数据库的引入,应用程序服务器上的 CPU 负载平均值在大量选择期间增加到大约 6-10(从之前的 3-4 增加到)。
当服务器不运行这些频繁更新时,选择的性能似乎保持在限制范围内。所以我觉得这些更新是导致性能下降的原因(而且这些频繁更新并不重要,所以如果从属数据库在一段时间内没有与主数据库同步,那就没问题了)。
对于此类应用,什么样的数据库复制设置比较好?我们可以调整哪些复制参数?
谢谢。
答案1
在主服务器上运行重度选择,并使用从属服务器仅作为数据的备份。如果主服务器宕机,那么您可以暂时使用从属服务器,直到主服务器再次运行。
答案2
从服务器(用于冗余)的负载通常低于主服务器(无选择,单执行线程),但仍具有几乎所有的磁盘写入容量要求。如果您的应用程序也需要磁盘资源,那么它将与从服务器竞争,这时您的平均负载就会上升。
我想说的是,给你的奴隶再拿一个盒子。