微服务方法:隔离和解耦

时间:2016-10-28 01:27:44

标签: architecture microservices

我要为我的微服务架构添加服务 我的新服务需要计算他负责的数据。这些计算以相对较高的频率发生。

为了计算事物,我的新服务需要从另一个服务中检索其他信息(比方说来自同一个有限的上下文)

这里的问题是所有这些调用都会导致一些性能问题。

您认为最好的方法是什么? 让我的新服务保存其所需的附加信息的快照(与其他服务的异步同步)是一个好主意,这样它就不必在每次需要计算时执行所有这些调用。

1 个答案:

答案 0 :(得分:0)

使用某种形式的缓存

无论你如何扭转并转动它,你都需要某种形式的缓存。如果这是您需要缓存数据的唯一地方,并且您还没有像Redis这样的完整缓存系统,请尽量保持简单。

一种简单的方法是在执行高频计算的应用程序中使用内存中缓存。根据您的应用,这可能是也可能不是。

如果您采用这种方式,请为您要加载的数据引入代理,并确保您拥有干净的界面,即不要泄漏数据的事实缓存到客户端。然后,在代理实现中,适当地缓存数据,例如。通过在异步刷新缓存之前保持X秒