知识卡片

读写分离的范围决定它是技术问题还是业务问题

普通读书笔记卡 · 1978.ba.3.a

内容

若读写分离只发生在一个子业务内部(某高流量子域自己做缓存加从库),这是纯技术架构问题对外透明。但若范围扩大到公司级别就升级为业务问题——电商”搜索”是纯只读系统,商品发布/价格/库存扣减是独立的写业务,读写对应两个不同子业务各有规则和团队。发散:判断某模式是技术还是业务问题,看其作用范围是封装在单一业务边界内,还是横跨多个独立领域。

参考来源

- 位置:第15章《技术架构与业务架构的融合》15.6节「领域驱动设计与读写分离(CQRS)」(源文件:_epub-src/text/part0021.html) - 结论依据:原文明确区分子业务内部读写分离是纯技术问题,扩展到公司级别(如电商搜索为只读系统、商品发布/价格/库存为独立写业务)就上升为业务问题,直接支持卡片结论。 - 原始内容:"如果某个子业务的流量很大,需要应对高并发问题,要做读写分离、加缓存等措施,也只是这个子业务的内部问题……读写分离纯粹是一个子领域内部的技术问题。这是'小范围'的读写分离,如果扩展到公司级别的'读写分离',又会从技术问题上升为业务问题。比如电商网站的搜索,很显然它是一个'只读'系统,而'写'的一端包括了商品的发布、价格的发布、库存的发布和库存的扣减,这里的'读'和'写'就变成了两个业务。"