
10
|
第
1
章
化可能导致一个正在复制数据的团队认为这就是原始数据。
被复制的数据在查询完成和数据传输完成时总是有些过时的。数据集越大,来源越复杂,
副本与数据源不同步的可能性就越大。当系统期望彼此拥有完美的、最实时的数据时,这
会是个问题,尤其是在就这些数据进行相互通信时。例如,由于数据过时,一个报表服务
可能会上报与计费服务不同的值。这会对服务质量、报表、分析和基于金钱的决策制定产
生严重的传导影响。
无法在整个公司内正确地传播数据并非由于概念上的根本性缺陷。恰恰相反,这是由于数
据沟通结构的弱化或缺失。在前面的场景中,团队的实现沟通结构作为相当有限的数据沟
通结构在执行着双重任务。
事件驱动型微服务的一个原则是核心业务数据应该易于获得,并且可以由任
何需要它的服务使用。这将用一个正式的数据沟通结构替代此场景中的临时
数据沟通结构。对于这个假设的团队,这种数据沟通结构能够消除从其他系
统获取数据的大部分困难点。
1.4.4
团队场景
(
续
)
该团队最终决定采用第二个选项,在同一服务内加入新特性。这种做法简单便捷,并且从
那之后他们已经实现了很多新特性。随着公司的成长,团队也在壮大,经过一年时间,是
时候考虑将原团队拆分为两个更小、更聚焦的团队了。
现在必须指定每个新团队负责之前服务中的某些业务功能。每个团队的业务需求都基于最
需要关注的业务领域进行了极好的划分。但是,要拆分实现沟通结构并不那么容易。就如
之前的情况,似乎两个团队都需要大量相同的数据来满足各自的需求。新的问题出现了。
•
哪个团队应该拥有哪些数据? ...