对于将单一应用程序拆分为微服务的人们,您如何处理拆分数据库的难题。出于性能和简单性的原因,我从事的典型应用程序进行了很多数据库集成。
如果您有两个逻辑上不同的表(如果有的话,则是有界上下文),但是经常对大量数据进行汇总处理,那么在整体中,您很有可能避免面向对象,而是使用数据库的标准JOIN功能可在将聚合视图返回到您的应用程序层之前处理数据库上的数据。
您如何证明将此类数据拆分为微服务是合理的,因此可能需要您通过API(而不是数据库)“联接”数据。
我读过Sam Newman的《微服务》一书,在有关拆分Monolith的章节中,他举了一个“打破外键关系”的示例,他承认通过API进行联接会比较慢-但他继续说是否您的应用程序是否足够快,是否比以前慢?
这似乎有点不高兴吗?人们的经历是什么?您使用什么技术来使API联接的性能令人满意?