关于 MontCache

MontCache 是一种基于 BYOC(Bring Your Own Cloud) 多云模式的缓存系统。旨在为用户节省公有云缓存成本,同时基于云存储设施,提供数据的持久化存储,并保证缓存服务的秒级启动,从而保证业务的高可用性。

核心特色

  • Spot
  • 弹性水平伸缩
  • 可用区流量自适应
  • bgsave更稳定
  • 实时数据存储

核心概念

产品架构

MontCache System Architecture

底层K8S架构

主要组件

MontCache 系统主要由以下模块组成:

  • K8S Control Plane
  • Busi Control Node
  • Busi Work Node

K8S Control Plane

k8s集群的控制面板,以无服务器模式运行的节点服务。跨越云平台的多个可用区。负责整个K8S集群的请求响应调度策略等。

Busi Control Node

Busi Control Node 为MontCache 的核心模块,主要运行业务系统的控制组件。跨多可用区部署,确保业务满足可用区级别的高可用。

该模块主要分为以下组件:

  • Region Server:子控系统,负责与中控(MontCache Crontrol Console Server)的信息交互。
  • Proxy: 客户端应用程序通过 MontCache Proxy与缓存集群进行交互。允许应用程序读取、写入和删除缓存数据。
  • MontCacheOperator:负责 MontCache 缓存的生命周期管理维护,包括创建、删除、监控等等。
  • Log Center:处理所有MontCache AOF/RDB 日志数据的存储。
  • MontCacheControl:对所有MontCache Cluster 的状态以及元数据管理
  • Sentinel:前期负责MontCache Cluster 的高可用,后期该组件舍弃。
  • Prometheus:负责所有K8S集群资源监控数据的存储,会对集群外部提供统一的分析接口。
  • 还有一部分组件以及服务,如rds,S3等,负责一些元数据的持久化,以及业务数据的持久化。

Busi Work Node

主要运行MontCache缓存的节点。

应用场景

Montplex Cache 背后的数据存储与几乎所有 Redis® API 兼容。因此,您可以将 Montplex Cache 用于 Redis® 的流行用例,例如:

  • 通用缓存
  • 会话缓存
  • 排行榜
  • 队列
  • 使用计量(计数)
  • 内容过滤