马丁·克莱普曼在《设计数据密集型应用程序:可靠、可扩展和可维护系统背后的大创意》一书中,撰写了关于现代应用程序数据基础架构元素的特征和权衡的文章。 在这本书中,他画了”图1-1″。一个可能的架构,用于组合多个组件的数据系统”。 这是一个探索,该示例和可能的架构与Couchbase。
示例 1:
下图 1 是本书中的体系结构。
让我们使用像Couchbase这样的现代数据库,通过在同一产品中提供可扩展的缓存、数据库、搜索和事件处理来简化基础结构。一个接一个,我们可以用Couchbase功能中的可扩展功能替换每个独立组件(
).
红色
让我们删除不必要的部件以获得新的体系结构。
示例 2:我添加了一个额外的常见用例:数据分析和 DataViz。
使用相同的技术使用 Couchbase 并删除不必要的组件后,我们会得到以下结果:
同样,让我们删除不必要的部件以获得新的体系结构。 在这里,我们利用了 Couchbase 中可用的分析服务。
这并不意味着所有内容都可以简单地重新构建以使用一个或两个产品。任何基础设施的趋势是增加复杂性。更多的组件会增加复杂性。这是持续添加、删除和重构组件的指南,以满足您的业务目标并消除复杂性。