服务读写分离(读服务,写服务),是否可行?

  • Post author:
  • Post category:其他



系统分层架构有一个迭代和演进的过程(详见《

互联网分层架构设计

》),早期,系统分层架构如下:



  • 上游是需要数据的业务调用方



  • 下游是存储数据的数据库



随着架构的演进,可能要

抽取出服务层


(详见《


互联网架构为什么要做服务化?


》):



  • 上游通过

    RPC

    调用服务获取数据


  • 中间服务层


    从数据库获取数据



  • 下游是存储数据的数据库



大家都知道,

数据库可以读写分离

,为了职责更清新,架构设计上,

服务能否读写分离呢?


如上图,服务化读写分离之后:



  • 业务方通过

    RPC

    分别调用读服务和写服务


  • 服务层分为读服务与写服务



  • 底层是高可用的数据库集群



当然,

也有可能读服务与写服务读写的是不同的数据库

,如上图:



  • 写服务访问写库



  • 读服务访问读库


写库与读库是一个主从同步的集群。



那么,问题来了:



  • 你遇到过这种架构设计么?




  • 这种架构设计好还是不好,为什么?





  • 如果服务读写分离设计好,

    上面两种方案哪种好?






欢迎讨论,

将从评论中精选出三条有

独特见解

的留言

,发放


58

元精美计算机图书兑换券







也欢迎



发,大家一起讨论。




相关文章:



业务层是否也需要服务化?




互联网分层架构,为啥要前后端分离?




版权声明:本文为z50L2O08e2u4afToR9A原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。