数据库架构演变(2)

2014-09-29
  • 976
  • 0
3. 读写分离
又随着业务的发展,读写分离这种模式出现了,这种模式主要的好处是将数据库分为读库和写库,并且分配到不同数据库服务器上,降低了读写同时进行时,系统间由于竞争资源最终导致效率变慢的几率。
优点:数据读取速度快。读库可以水平扩展
缺点:由于读写数据库之间需要数据同步,所以会有一定延时。在系统实时性要求高的场景中不适用。写库不能水平扩展,一旦写库崩溃将导致整个系统瘫痪。

4. 业务垂直拆分  
当网站很小的时候,所有的模块和表都在一起,这时还不需要做垂直拆分。但是当系统一天天壮大之后,服务器的压力也在变大,慢慢的原有的架构已经不能满足新的应用场景。所以对于大型网站来说需要通过将一个大的系统根据业务拆分成多个子系统。如下图所示:



系统拆分之后,会大大提高系统性能。更进一步的做法是将子系统服务化,也就是说通过服务间的调用来满足业务需求。服务化的过程可以用WebService来实现。
优点:降低了系统间的耦合,提高了系统性能。
缺点:单表大数据的问题没有解决。无法做表关联查询。应用端复杂性增加