九州官方网站 版权所有 2003-2023
-
您的位置:
- 网站首页
- > 九州(中国)科技有限公司官网
- > 鲸品堂
您的位置:
改造前期--对现有功能的拆解 设计阶段--确定整体风格、进行整体设计 构建CRM几大中心的缓存统一管理功能,让运维人员易懂,功能清晰,支持单值刷新、支持批量刷新,支持缓存值查看; CRM一点刷新能力,涉及关联关系的缓存数据,根据业务要求做到同步刷新,包括关联的规格、实例模板等。实现一点刷新,不再需要人为去判断逻辑顺序,可以按照销售品维度、产品维度等进行全量刷新; CRM缓存刷新操作有迹可循,分布式应用多节点缓存信息可巡检、对比,刷新操作日志保留,方便运维和开发人员对问题进行定位与跟踪; 提供CRM可视化界面,经过加工的KV值按结构进行展示,可直观、清晰地查看到分布式缓存、本地缓存、数据库三者的缓存对象具体值。 优化重构改造 第一步:拆除工作--剔除不必要冗余的逻辑 经过对功能的拆解和专题设计阶段,梳理出散落在各个中心的缓存刷新口径大概有10多个,口径多、页面多,难免给运维人员混淆视听,这就需要从各中心散落的缓存管理功能中取其精华、去其糟粕,剔除掉散落不一的页面和冗余的业务逻辑,将各中心保留的页面功能一并集成到门户的统一管理页面中。 第二步:隐蔽施工工程--缓存刷新机制统一,zk命令发布监听模式统一 第三步:基础施工工程--按照使用角色提供刷新界面 参与缓存运营工作角色包括版本发布、故障运维人员和规格数据运营三种角色。角色不同、操作习惯也会存在一定的差异,为了让缓存管理功能更加强大,我们针对不同的角色,提供了个性化的刷新界面和逻辑。 1、针对运维或数据运营角色人员,我们提供了key值查看缓存数据并刷新的界面。 2、针对版本发布人员,我们只需要提供表、字段对应的KV关系刷新界面即可。 第四步:常规装修--缓存可视化、缓存巡检、缓存操作日志 要解决缓存可视化问题,必须将缓存的内容进行结构化展示。在业务系统中,我们缓存的数据有可能是单一的KV映射值,也可能是复杂的业务对象数据。因此要提供给运维人员一个可视化的展示,我们就需要将key和value值进行内部进行封装再提供出来。以产商品的配置数据缓存结构为例,它的结构是由不同的子表缓存对象组成。 在完成结构化的梳理后,再增加页面缓存数据结构化展示,使得结果能够更清晰直观。 完成了刷新缓存动作后,操作是否成功,缓存的数据情况无法查看。为解决这个问题,还需要提供可视化的巡检功能,操作后可以在页面发起请求,后端根据key值循环调用每个应用节点,获取key对应的缓存值进行稽核,对比本地缓存与数据库是否一致,标记数据不一致应用节点,同时组装本地缓存对象的数据值。 巡检结果可视化,差异数据对比,效果如下图所示: 巡检 数据差异对比 原子能力细化和封装 缓存补偿和缓存拦截机制 打造特色--灰度生产缓存无缝切换