广联达统一应用开发框架

产品概述

什么是Spring Cloud Glodon?

​ Spring Cloud Glodon(简称SCG),是在多云战略指导下,以 Spring Cloud 为基础,发挥微服务架构优势,沉淀应用开发领域的通用技术,形成标准化技术规范并推广实现一个可共享可复用的统一框架;具有扩展性、兼容性、前瞻性,满足广联达产品线快速开发、避免重复开发的需求,开创产品创新的新模式和新途径,更好的为产品开发和部署、运维提供服务。

​ Spring Cloud Glodon是一套技术开发框架,来源于不断的技术积累和沉淀,使得技术使用者不断踩在巨人肩膀上继续前行。采用统一的开发框架后,在技术栈,技术组件,技术实现方案,就能形成标准化的技术输出模式,避免千人千面的局面。

Spring Cloud Glodon的目标

​ 一套代码,多云中立。

​ 让产品支持多云,引用云中立适配层,通过抽取多云适配抽象层,解决已有产品对某云依赖共性问题,包括专有组件、中间件或服务,为不同的产品线业务提供可以重复使用的能力,具备多云中立的特性。

​ 云中立适配层屏蔽了公有云及私有云PaaS层中间件不统一的问题,通过云中立的适配可以实现“公有云之间的服务切换”或“私有云部署”时应用层代码零修改。

​ 在多云战略的推动下,技术发展与产品线业务发展的矛盾凸显。建立统一的适配通道,不仅有效缓解技术与业务间的矛盾,同时,统一适配,节约成本,避免重复投入;统一约束,技术管控规避风险;统一标准,支持最佳技术实践推广。

image-20200812164833517

为什么以Spring Cloud为基础

​ 首先,基于对微服务框架的优势分析,使用Spring Cloud框架开发微服务架构的系统,使系统具备微服务架构的优势。其次,基于存量产品的现状考虑,存量产品为多技术栈并存的情况,公共组件的重用无法在代码级别进行,只能采取服务方式提供。最后,在新研发产品的趋势上发现,越来越多新产品研发、现有程序的重构,实施微服务的开发模式。

SCG的不同之处

​ Spring Cloud 既是一套规范,基于 Spring Boot 框架,准确的说,它不是一个框架,而是一个大的容器,它将市面上较好的微服务框架集成进来,被广为所知。市场上主流的微服务架构解决方案Spring Cloud Netflix与Spring Cloud Alibaba,以此为例说明:

​ 从上表可以看出,Spring Cloud Netflix 与Spring Cloud Alibaba是以微服务治理为核心的分布式应用程序开发解决方案,主要内容包括服务注册发现、服务网关、配置中心、服务链路追踪等组件。而Spring Cloud Glodon是以广联达通用最佳实践为核心的企业级开发框架,主要内容Spring Cloud组件、广联达通用最佳实践。

​ 其中,Spring Cloud 提供的基础构件完全满足业务需求,可以直接选择其组件,比如 服务网关Zuul 、链路断熔降级Hystrix等; Spring Cloud 的基础构件不能满足业务需求时,需要开发新的基础组件产品,并需要基于微服务架构的设计思想来开发新的组件产品,比如云中立SDK。

功能介绍

技术规范

​ 推行技术规范,旨在帮助行业开发人员上更高效、更安全、更容错、有协作性,提高代码质量,同时,大大降低维护成本。

构件选型

​ 通过日常开发过程积累,基于Spring Cloud社区组件以及公司业务发展需求,对基础技术选型。

新基础组件产品

​ 除了 Spring Cloud 的基础构件外,我们往往需要开发新的基础组件产品来满足产品的需求。特别是当前微服务架构大行其道,常常需要基于微服务架构的设计思想来开发新的组件。

云中立SDK

​ 云中立SDK是通过抽取多云适配抽象层,对产品中用到的中间件或基础服务进行的封装适配,通过配置的不同,来实现公司产品在多云环境下的平滑部署、迁移。其通过提供相应的SDK及服务,屏蔽掉公有云及私有云Paas层中间件不统一的问题,包括:对象存储,消息队列,表格存储及基础服务适配,用户中心等。

​ 云中立的适配的中间件可以是公有云成熟的中间件产品,也可是使用私有云企业现有的中间件产品及 基础服务,如:用户中心、对象存储等。

​ 而在私有化环境下,大部分都是通过自己搭建的方式来完成。

最佳实践的推广

​ 通过主动交流、氛围营造、以及推荐与激励机制的建立,为公司内部技术的最佳实践的广泛应用提供更多可能,为标准体系的建设提供支持。

  1. 由云平台团队研发的组件或工具,如云中立SDK、运维服务等

  2. 由产品团队贡献的优秀实践,如apollo、用户服务、图形化简等

  3. 针对标准体系支持,如CICD、DevOps等

产品优势

为什么选择Spring Cloud Glodon?

为广联达的产品量身打造

​ Spring Cloud Glodon的云中立SDK来源于私有化专项、华为云迁移、施工腾讯云专项、TC上线AECORE专项、电子政务多云适配专项等现实经验的归纳总结,经过数字施工、数字造价-电子政务、有巢数字、平台技术中心等一线产品实际业务打磨,并且,将努力保持广联达通用技术的持续输入。

完整的解决方案

为开发者提供完备的服务

从团队的角度:

  1. 团队专注业务:公共技术的统一治理,帮助业务集中精力

  2. 保障质量:在技术栈,技术组件,技术实现方案,甚至在代码规范上就能形成标准化的技术输出模式

  3. 降低风险:降低特定人员依赖性、规避技术混乱风险

从个人的角度:

  1. 个人成长:通过统一技术框架学习技术规范、通用技术等助力个人成长

  2. 卓越贡献:能力越大,责任越大,有能之人可以贡献自己的技术成果

  3. 减少迷茫:新产品、新技术的应用明确方向,减少迷茫期

应用场景

公有云多云适配

​ 产品采用多云架构,适配不同的云厂商,尽可能的使用云厂商提供的优秀特性,保障运行于其云平台的业务系统的可靠性,提升整体业务的竞争力。

  1. 多组件,包括对象存储、消息队列、表格存储、短信服务、用户中心

  2. 多公有云,包括阿里云、华为云、腾讯云、AWS海外云服务

私有化部署

​ 云中立适配层屏蔽了公有云及私有云PaaS层中间件不统一的问题,通过云中立的适配可以实现公有云服务在私有云部署时应用层代码零修改。

​ 私有云适配:消息队列(RabbitMQ)、对象存储(MinIO)、表格存储(MongoDB)、私有化客户用户中心及本地最小集。

混合云解决方案

​ “混合云”广联达的定义是:在单一异构结构中,使用多种计算服务的能力,不限定某个“公有 云”或“私有云”。融合了公有云和私有云,是近年来云计算的主要模式和发展方向。我们已经知道私有云主要是面向企业用户,出于安全考虑,企业更愿意将数据存放在私有云中,但是同时又希望可以获得公有云的计算资源,在这种情况下,它将公有云和私有云进行混合和匹配,以获得最佳的效果,这种个性化的解决方案,达到了既省钱又安全的目的。