当前位置: 首页 > 知识库问答 >
问题:

grpc体系结构:缓存层应该在哪里?

赖诚
2023-03-14

我们有一个整体系统,我们目前正在使用GRPC将其分解成微服务。目前,我们在C#客户端的单片代码中使用enyim缓存。

  1. 是否应该将其移到此服务的gRPC服务代码中?这样,每个服务都有自己的缓存代码。这将导致大量重复的缓存代码。
  2. 我们是否应该为缓存相关代码创建dll,并在新的gRPC微服务中使用它?我们仍然需要在每个gRPC服务中放置重复配置。
  3. 只从单片代码处理缓存,并且只在缓存丢失的情况下调用gRPC服务?

建议?

共有1个答案

慕容耘豪
2023-03-14

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

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

 类似资料:
  • 5.4.1 层次化体系结构 层次化设计是构造复杂系统的一个基本方法,按此方法设计出的系统具有层次化体系结构。现实世界中这种层次化结构俯拾皆是。例如,一幢高楼总是从最底层打基础开始,一层 一层地加高。又如,我国的行政组织具有街道、区、市、省、中央这样的层次化结构。 计算机软件的各个构件也经常组织成这样的层次体系结构。在层次体系中,下层构件为 上层构件提供服务,上层构件使用下层构件的服务,上层和下层之

  • 我是WPF和MVVM的新手。这是我通常为ASP.NET应用程序设置体系结构的方式: 数据层 我通常使用ORM工具将数据持久化到数据库中。 业务层 这包括我所有的商业模式和商业逻辑。 服务层 这一层用作进入后端系统的入口点。(有时通过周转基金)。这一层负责将业务模型转换为视图模型。 表示层 这一层用于表示逻辑。 我知道MVVM的视图是.xaml文件并驻留在WPF应用程序中。但是,我对“模型”和“Vi

  • Ceph 独一无二地用统一的系统提供了对象、块、和文件存储功能,它可靠性高、管理简便、并且是自由软件。 Ceph 的强大足以改变贵公司的 IT 基础架构、和管理海量数据的能力。Ceph 可提供极大的伸缩性——供成千用户访问 PB 乃至 EB 级的数据。 Ceph 节点以普通硬件和智能守护进程作为支撑点, Ceph 存储集群组织起了大量节点,它们之间靠相互通讯来复制数据、并动态地重分布数据。 Cep

  • 冯·诺依曼体系结构 计算机处理的数据和指令一律用二进制数表示 顺序执行程序 计算机运行过程中,把要执行的程序和处理的数据首先存入主存储器(内存),计算机执行程序时,将自动地并按顺序从主存储器中取出指令一条一条地执行,这一概念称作顺序执行程序。 计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成。 数据的机内表示 二进制表示 机器数 由于计算机中符号和数字一样,都必须用二进制数串来表

  • 主要内容:1. Data Access/Integration(数据访问/集成),2. Web 模块,3. Core Container(Spring 的核心容器),4. AOP、Aspects、Instrumentation 和 Messaging,5. Test 模块Spring 框架基本涵盖了企业级应用开发的各个方面,它包含了 20 多个不同的模块。 图1:Spring架构图 上图中包含了 Spring 框架的所有模块,这些模块可以满足一切企业级应用开发的需求,在开发过程中可以根据需求有选

  • 主要内容:请求的生命周期:由高层次,Struts2是一个上拉型MVC(MVC2)框架。在Struts2的模型 - 视图 - 控制器模式,实现以下五个核心部件: Actions Interceptors Value Stack / OGNL Results / Result types View technologies Struts 2 从传统的MVC框架操作需要的模型,而不是在控制器角色略有不同,虽然有一些重叠。 上面的