{"repo":"WeBankPartners/wecube-platform","free":true,"listed":false,"github":"https://github.com/WeBankPartners/wecube-platform","clone":"git clone https://github.com/WeBankPartners/wecube-platform.git","description":"WeCube Platform","language":"Go","stars":384,"topics":["java","vue","apache","ops-tools"],"license":"Apache-2.0","category":"ui-components","readme_excerpt":"WeCube 中文 / English 引言 WeCube 是一套开源的，一站式 IT 架构管理和运维管理工具，主要用于简化分布式架构 IT 管理，并可以通过插件进行功能扩展。 Releases 快速入口 功能体验 功能的体验可参照：WeCube 全量体验过程说明 搭建私有环境 起源 微众银行在分布式架构实践的过程中，发现将银行核心系统构建于分布式架构之上，会遇到一些与传统单体应用不同的痛点（例如，服务器增多，部署难度大；调用链长，全链路跟踪困难； 系统复杂，问题定位时间长等），在逐步解决这些痛点的过程中，总结了一套 IT 管理的方法论和最佳实践，并研发了与之配套的 IT 管理工具体系。WeCube 就是将该套方法论和最佳实践，从微众内部众多 IT 管理工具体系中提炼出来，整合成一套开箱即用的 IT 管理解决方案。 设计理念 WeCube 的设计理念与 IT 系统生命周期管理基本一致。可以通过“六个维度和一个核心”来阐述。 一个核心：通过注册新插件持续扩展 WeCube 的功能，通过如下 5 个能力实现插件注册及协作。插件注册详见“插件注册”。 - 菜单布局：WeCube 提供前端 UI 基座和前端开发规范，使各个插件的前端交互能够无缝集成到 WeCube，进而形成一个统一平台。 - 权限模型：WeCube 的权限模型提供“用户-角色-菜单”三级权限模型，并提供统一认证方案。数据权限及 API 权限，由插件自身控制。 - 流程编排：WeCube 内置一套标准的 BPMN 流程引擎，可以通过客户自定义编排驱动插件协同工作，减少人工干预。编排设计详见“编排设计”。 - 数据模型：插件需要将自身需要提供给其他插件使用的数据模型注册到 WeCube 的统一数据模型，然后通过标准的 CRUD 接口提供数据访问服务。 - 系统参数：WeCube 的全局参数、插件需要客户修改、插件需要暴露给其他插件使用的参数，需要注册到 WeCube 的系统参数内。 六个维度：通过定义六个维度的菜单，并将插件功能有组织性的插入这六个维度菜单中，形成对 IT 系统全生命周期的有效管理。 - 任务：汇聚多种类型任务，形成一体化的工作平台。工作内容清晰可见，轻重缓急一目了然。 - 设计：定义模型和规范，形成标准化设计语言。通过规范化设计及图形化展示，清晰、准确地描绘出对分布式架构的期望。 - 执行：通过各类自动化、标准化任务的执行，将分布式架构的期望设计变成现实存在，消除人员能力参差不齐导致的实现差异。 - 监测：定义全方位的监测项指标，通过持续收集监测数据，精确反映现状，并发现现实与期望的差异项。 - 智慧：应用机器学习等技术，赋予智慧能力。通过数学建模，制定应对监测发现的差异项的处理策略。 - 调整：通过执行处理策略来不断进行动态调整，最终保持现实与期望的对等，进而使系统稳定运行。 技术实现 WeCube 分为核心功能模块和插件模块。 核心功能模块使用 Java/MySQL/VUE 开发，主要负责工作流程，可视化和核心数据存储。 插件模块用于功能扩展，分为资源管理、数据整合、功能增强三类插件。对于插件，WeCube 定义了一套接口规范，插件开发者可以在遵循规范的前提下，自行选择开发语言。目前已有的插件使用的开发语言包括 GO 语言和 Java。 系统架构 WeCube 2.x 版本 组件间详细关联图： 1, Portal web：浏览器客户，客户与 WeCube 交互的入口。 2, Portal nginx：接收客户端访问请求，如果请求静态资源，返回 Core 或插件的静态资源","default_branch":null,"files":null,"tree":[],"storefront":"/r/WeBankPartners","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/WeBankPartners/wecube-platform/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}