目前CMDB使用RedisGraph存储各种关系映射数据,数据的重要性不言而喻,所以数据的防灾、高性能及高可用非常重要。

目前现状

  • RedisGraph是单节点运行,存在数据防灾、高可用、性能不易扩展的缺陷
  • 在CMDB系统中RedisGraph应用流程图


RedisGraph图形数据库多活设计方案_数据

主要分享低代码、微服务、容器化、SAAS‬、系统架构方面的的‬内容‬‬,希望‬大家‬点赞‬,评论,关注‬。

现状改进

  • 为了解决数据防灾、高可用、高性能的需求,RedisGraph设计为主从(1主2从)、读写分离架构
  • 改进后RedisGraph架构设计


RedisGraph图形数据库多活设计方案_数据_02

高可用

  • 主要通过主从模式实现,当主redis数据变动时,实时同步到从redis
  • 当主redis出现问题不能继续提供服务时,哨兵则把从redis充当主redis继续提供服务
  • 高可用设计正常情况下

RedisGraph图形数据库多活设计方案_redis_03

  • 出现问题时

RedisGraph图形数据库多活设计方案_数据_04

高性能

  • 性能主要是有代理层实现通过配置读写比例,可以有master负责CUD操作,slave实现R操作
  • 高性能设计方案如下正常情况

RedisGraph图形数据库多活设计方案_数据_05

  • 出现问题时

RedisGraph图形数据库多活设计方案_redis_06

备注

  • 该方案设计不影响cmdb现有的开发实现,不要业务需求实现代码,只要把改动图形数据库链接信息即可。
  • 如果没有特别的需求,可以省去VIP,直接链接Proxy也可以。

记得给个关注,[来看我][来看我][来看我] 沟通不迷路

主要分享低代码、微服务、容器化、SAAS‬、系统架构方面的的‬内容‬‬,希望‬大家‬点赞‬,评论,关注‬。