`
echohfut
  • 浏览: 225127 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

高性能网站之数据库

阅读更多

1. 读写分离

   一个主数据库负责写,多个从数据库负责读。主数据库数据单向同步到从数据库。

 

2. 分库

先垂直分库,即不同的表放到不同的数据库中

 

在水平分库,同一个表,如用户表,数据太多的话分配到不同的数据库中,根据hash,一致hash 等

 

针对分库后如果需要有多个库的关联查询,方法有

a. 多个库分别查询再汇总或者代码中处理

b. 业务数据同时保存到多个相关库中,这样设计表结构是需要考虑到多个库中可能的关联。

 

3. App层 与 DB 层之间加入cache层,如memcached, 减少数据库的直接操作

cache对应的是内存,一台服务器的物理内存是有限制的。利用memcached的分布式Cache,也即分布式内存解决了这个限制。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics