技能服务于事务,事务才是技能更新的原动力

背景

项目从零到一逐步成型,计算数据、监控数据、日志数据等已经逐步丰富。素材已到位,概览大屏的规划开发任务也使用而生。产品基本以客户定制化导向,所以大屏概览的定制化程度很高。在规划落地方面也面临许多应战。

规划

后端规划

首先后端微服务规划计算目标,因为在微服务大框架下收集的数据来自各个微服务、第三方服务。所以树立一个大屏概览一致的微服务来从各个微服务实时收集、周期性同步数据,梳理整合成事务目标来向上供给一致数据模型的数据。

数据模型规划

数据模型以一致规划的json数据的固定结构 + metadata构成。(不过多描述)

前端规划

前端规划上主要以规划器和解析器为主,合作组件、过滤器完结全体规划。规划器示意图:

大屏概览-定制化方案
单独模块的装备:

大屏概览-定制化方案

组件规划(前端)

组件规划上分为三类

  1. 根底生态组件(折线图、水球图、柱状图等,无事务状况)
  2. 根底事务组件(这类组件是和事务关联的,有必定事务状况,归于事务定制化组件)
  3. 事务片段(这类归于定制化开发过程中堆集的动态组件,归于根底事务组件的最小单位)
  4. 事务组件(这类归于发布后的根底事务组件或根底生态组件,它对接了接口,一般发布给客户直接用的) 备注:每个组件类都有过滤器的注进口,便利一些定制化数据过滤。杂乱些能够装备多层过滤器,默认装备的是一组demo数据,主要解决刚拖进规划编辑器区域烘托空白问题。

模块规划(前端)

模块规划指的是概览大屏的出现容器,模块容器可拉伸扩大(相似栅格规划,最小屏幕宽度1/6)。

  1. 模块大小变化:或许会引起部分组件的重新制作。因为组件中存在canvas制作的组件,这类组件会触发重绘,一般通用组件采用flex布局会自动适配模块容器的大小变化。
  2. 模块中组件组装:模块中组件能够出现一个或多个,能够兼并在一起以按钮切换查看,也能够一次性一起铺开出现多个。如下图:

大屏概览-定制化方案
3. 模块数据:模块装备的请求数据分为两类。一类装备这个模块承载几个数据目标(eg:承载cpu、内存、磁盘三个目标),一类数据模块的额外装备metadata(eg:模块中组件配色组是什么?图标用哪些?多个组件怎样分组?)

使用规划

使用规划主要指的规划出来的概览大屏怎样用

  1. 概览大屏列表,如下图。创立出游离态的概览大屏,把它使用给角色、账户。
    大屏概览-定制化方案
  2. 详细使用,如下图。一个账号或许具有多个角色(它或许具有多套大屏概览),部分模块装备的数据目标或许不是实时的增加强制同步功用。

大屏概览-定制化方案

缺点

这套计划不是彻底的纯技能计划,封装定制化组件有必定规矩约束,不是很友爱。 前后端对数据模型的规划有许多内置规矩,装备上存在学习本钱。 暂不支撑一个模块中放置不同类的组件。

备注

以上计划基本以概览规划为主分享,大屏规划上细节更为杂乱一些。有幸之前学习参阅过业界一些商用的大屏概览规划计划,粒度更细、杂乱度更高,当然也更好。想想应该起一个醒目点的标题…