《管见》向万红:ECP平台Ready云原生

《管见》向万红:ECP平台Ready云原生。


《管见》向万红:ECP平台Ready云原生

----《管见》向万红:ECP平台Ready云原生//----

《管见》第二期

作者:向万红远光软件股份有限公司副总裁

云原生是构建和运行应用程序的方法 , 是一套技术体系和方法论 , 因其在设计阶段就考虑到应用未来会运行在云环境上 , 可以充分利用云平台的弹性扩展、分布式等优势 , 更加快速的创新和低成本的试错 , 获得了用户的肯定 。 据悉 , 很多大型集团客户已直接将云原生纳入到新建系统技术准入条件 , 也有越来越多的企业正准备采用云原生进行系统开发 。

近年来 , 云原生被概括为微服务架构、容器化、DevOps和持续交付四大要点 。

一、微服务架构

我们在做系统架构设计时 , 一般会将一个复杂的系统拆分成若干个子系统 , 分块完成子系统的设计 。 在过往开发实现时 , 常将所有的子系统的数据库表放在一个库 , 直接SQL关联其他子系统的数据库表 , 直接依赖接口调用其他子系统服务 。 这样实现的系统是单体的 , 只能整体交付 , 无法按子系统分开部署 。 微服务架构则充分体现了低耦合和高内聚的设计思想 , 对业务系统进行细粒拆分 , 分而治之 , 有效降低业务系统复杂性 。 每个微服务只提供某一领域的业务能力 , 对外唯一的访问方式就是其对外发布的服务API 。 微服务开发团队在遵从接口契约不变的约束下 , 可以自主管理、自主优化 。 微服务化同时也会对企业技术架构提出新的挑战 , 例如:根据需要拆成多个微服务运行 , 导致基础设施的维护成本高;整个应用分布在多个微服务中 , 定位故障更加困难;跨服务调用时 , 由于不在同一个事务中运行 , 容易产生分布式事务 , 出现数据不一致问题;跨域数据访问 , 有别于传统SQL关联查询 , 需要调用服务 , 在内存中拼装数据 , 增加查询的复杂度 。 远光ECP为企业提供了应用托管和微服务管理能力 。 以应用为中心 , 提供简化部署、快速扩容、监控和运维等应用生命周期管理工作 。 远光ECP集成了TCC和Seata分布式事务框架 , 大幅度降低了分布式事务的开发难度 , 同时提供集中配置、服务注册、服务发现、服务路由、服务治理和服务监控等微服务管理和监控能力 。

二、容器化

在微服务架构下 , 一个复杂的应用系统可能由数十甚至数百个微服务组成 , 且其中高频访问的微服务还需要部署成集群 。 传统的运维方式难以支撑大型企业应用系统的运维 。 利用容器化技术 , 将微服务打包成容器 , 便捷地支持微服务架构实现应用的自动化 , 更加灵活的应对变化和弹性扩展;利用容器的可迁移性 , 帮助企业更便捷的上云和迁云 , 让应用在自有数据中心和云端实现动态迁移 。 远光ECP提供了Docker容器的生命周期管理 , 利用容器技术和服务编排打造大规模、多集群、跨地域\跨团队、业务应用一键式部署、灰度发布等功能 , 并通过极简的人机交互无缝链接远光ECP其他模块产品 , 提供弹性、高效、便捷的平台服务 , 助力系统架构微服务化、高效运维 。

三、DevOps

在VUCA时代 , 随着外部环境变化和市场竞争的加剧 , 每个企业都在思考如何更快速交付有价值的服务给客户 。 DevOps作为一种全新的软件研发管理模式 , 正是在这种背景下诞生的 , 它强调研发组织内部不同角色的沟通、尽可能的自动化一切操作 , 不断的获得反馈以寻找提升效能的机会 。 远光ECP是遵循DevOps理念及技术体系 , 凝聚了远光多年在软件工程实践和研发管理领域的探索和实践经验而生 。 能为企业的研发团队提供项目管理、产品设计、开发编码、代码托管、测试管理、持续集成等的一站式协同研发服务 , 帮助企业规范化管理研发过程 , 持续提升研发效率和质量 , 先进的软件工作技术使复杂的研发工作更简单 。