我刚刚完成了一个基于 redis 的数据库层,它提供了在多个数据库之间进行选择的功能,但是我自己对应该做的常识没有经验。可靠性是我最大的关注点。
在从属数据库和主数据库都可用的应用程序中,通常如何组织写入和读取?
大佬们是怎么做到的呢?
我刚刚完成了一个基于 redis 的数据库层,它提供了在多个数据库之间进行选择的功能,但是我自己对应该做的常识没有经验。可靠性是我最大的关注点。
在从属数据库和主数据库都可用的应用程序中,通常如何组织写入和读取?
大佬们是怎么做到的呢?
规则1:不要。
规则 2:在您测量并证明数据库确实是您的瓶颈之前不要这样做。大多数 Web 应用程序瓶颈是提供静态内容和陈旧内容所需的时间。与数据库事务无关。
规则 3:即便如此,也要考虑其他分区数据的方法,而不是复制数据库。将历史从当前数据转移到仓库中。按客户或主题领域或 Web 应用程序将数据拆分到多个对等数据库中,共享有限或不共享。
法则四:当你能证明别无选择时,看看主从数据库。
这就是有多少人解决这个问题。
对于单主,多从,它通常就像将所有数据修改查询发送到主,并将所有选择发送到从一样简单。通常,您的数据库抽象层可以轻松地为您处理这个问题。 本文详细介绍了这种特定类型的设置。