grpc架构:缓存层应该在哪里?

时间:2017-06-27 17:32:08

标签: c# caching microservices grpc

我们有一个单片系统,我们目前正在使用gRPC进入微服务。目前,我们在单片代码中使用C#客户端中的enyim缓存。

在创建我们的第一个gRPC服务时,我们感到困惑的是缓存层应该在哪里:

  1. 是否应将其移至此服务的gRPC服务代码?这样每个服务都有自己的缓存代码。这将导致大量重复的缓存代码。
  2. 我们是否应该为缓存相关代码创建dll并在新的gRPC微服务中使用它?我们仍然需要在每个gRPC服务中放置duplcate配置。
  3. 仅处理来自单片代码的缓存并仅在缓存未命中时调用gRPC服务?
  4. 建议?

1 个答案:

答案 0 :(得分:0)

当我检查这个时,我只是在浏览:

API Gateway Responsibilities

在API Gateway上进行缓存很有意义,因为它可以节省对服务的调用,并且缓存代码不会在每个服务上重复,而是通过API网关本身保持集中。