云开发在教育应用开发、运维全流程实践
编者按:10月21日,2021云栖大会云效BizDevOps分论坛上,教育行业- E联智校的研发总监、高级架构师- 冯涛老师围绕在云的时代,如何完成云阅卷从传统技术框架到云开发生态的变迁进行了分享。
本文从3方面介绍了我们依托云效解决了产品和架构的问题,完成产品上云和项目转变的过程。
- 传统开发模式的痛点和应对;
- 云开发助力企业新的开发模式落地;
- 云开发在开发运维中的实践;
一、传统开发模式的痛点和应对
现在是VUCA的时代,什么是VUCA呢?V就是易变性,U不确定性,C复杂性,A模糊性。
什么是易变性?围绕着现在商业模式和市场变化速度快、变化大的情况,我们的产品项目就要面对这种问题并解决。
什么是不确定性?在解决问题的很多办法中哪条路径是我们的最优解呢?在当前环境下现阶段的最优解不可能做到一劳永逸。
什么是复杂性?在企业和行业做数字化转型的过程中,面对的客户是跨行业、跨专业的情况,面对的需求越复杂设计的系统也越复杂。
什么是模糊性?各行各业的信息化水平不同,比如客户信息化水平特别低的情况下提出高需求,这要经过前期非常长阶段的需求调研才能达到最终的客户需求。
面以对这样的问题,我们通过变更更快、风险更低、持续性更强的敏捷方式实现企业本身的改革后来应对。
改革对企业来说,在技术门槛、人力成本和资源上都稍显不足,在我们的实践中通过云效整套流程实现全云端统一化,实现了我们的目标也解决了企业遇到的问题。
二、云开发助力企业新的开发模式落地
在前期的需求和研发阶段的生命周期中,提供了一套贯穿需求任务到发布需求的生命管理,满足了企业前期研发阶段的方案。
云开发提供了零门槛,降低了研发门槛和技术门槛,通过一键部署的方式实现快速响应客户需求,提供一系列的全方位监控,保证系统能够稳定的运行。
在项目中也用到了EDAS等云原生组件,为我们提升了研发效能和数据安全保证又降低了成本增加了效率。
上图是借助了云效的方案图,云效提供了统一的ID工具,解决了我们开发环境新员工上手难的问题,通过CICD工具保证项目迭代快速、持续的交付,容器组件通过云效可以简单快速高效的完成需求。
1、云效:打破沟通壁垒
云效打破了沟通上的壁垒,因为在传统的研发流程上, EXCEL表格或者传统的工具,在需求调研阶段、需求设计阶段,比如开发、研发的设计阶段、运维、测试的各个阶段,市场上提供了非常多的工具,但是各个工具在整套流程上无法保证数据的一致性,在项目的进度跟进上也是相对是滞后的。
云效通过一站式的解决方案为我们提供了一整套的流程,可以在云效平台上实现从需求的分析设计,一直到开发生成测试报告,最终项目可以通过协同化办公实现整套的技术沉淀,包括DevOps级别的沉淀和项目经验级的沉淀,帮助中小企业更快的实现企业的高效DevOps的情况。
2、云效:打通数据割裂
云效帮助我们打通了数据割裂的情况,我们在开发的各个阶段数据都是相对单一的,而且存在信息孤岛的情况。在每个阶段所有的数据都是分离滞后的,云效提供钉钉接入,包括组织结构人员的同步和信息及时推送,保证了开发的及时性。我们一站式方案是通过一个账号完成整套的管理流程。
- 降低了开发管理的成本;
- 降低了新入职员工进入公司快速介入开发的时间;
- 关于云开发,一个代码、一个仓库无缝对接,对接了阿里云的EDAS平台,让整个流程变得可控高效;
3、云开发:一键部署、零运维
云开发提供的功能主要是一键部署、零运维。在我们协作开发过程中传统的开发模式去做代码质量检测会更麻烦,在云效提供的流水线上可以做到一键的代码质量检测、代码的一键编译和一键发布等。云效还为我们提供自动扩缩和日志管理,降低了消耗成本和运维成本提升了效率。
4、云开发:全方位监控
系统上云后,云组件提供的全方位监控、系统全方位、全链路的监控变成了可能。在这个阶段涉及到各个环节,比如开发环境到预发环境、测试环境到线上生产环境,各个环境存在不同的差异性,云效为我们解决了环境差异性的问题。
5、云原生:保障数据安全
链路分析各个链路存在的问题和更快、更准确的定位问题,开发人员用得比较多的是开发接口调用和错误异常分析等,更快的解决我们当前面临的问题。
数据安全的保障,除了系统稳定性对我们要求更高的就是系统安全、数据安全,云原生组件为我们提供了精细化管理、权限管控和敏感信息的泄露检测、行为安全日志的审计等等,解决了我们日常包括开发、运维和运营过程中的安全性问题。
数据库的自动化备份和环境的隔离,比如说各个环境造成脏数据的情况系统有漏洞检查。
云效提供的云开发和云原生组件给我们带来了便利性,上图是我们系统落地实施的情况。E联智校主要是教育类产品,依托于钉钉为基座为学校组织架构的老师、学生和家长提供服务。
通过这两年的实践过程发现,教育类行业周期性比较长,比如说日周期的学生上学、放学,年周期的上学期的开学到放假,下学期的开学到放假,周期性比较强,用户的并发性也比较集中。使用阿里云的动态扩容、缩容的产品降低了资源的成本。
6、平台使用资源概览
上图是平台使用的资源概览。比如去年我们需要运维人员运维的服务器数量在将近200台左右,当时的服务数量五六十个的样子。使用了云效后降低了我们运维难度和服务器管理的数量,我们只需要保证基础的运行,通过提供的动态扩容、缩容的问题,降低成本保证系统的高可用性。
云效提供的项目管理工具像大脑一样,为我们提供项目管理生命周期和研发生命周期的管理,保证了效率和便捷性。
开发人员完成开发后,测试人员完成版本测试后,云效的流水线为我们提供代码扫描,比如做代码质量监测、应用、构建、部署、测试等,快速完成测试的迭代。
测试完成后,通过快速的迹象构建部署,分发到各个服务器上面,最终发布到我们的应用平台。在这个应用平台里使用了非常多的云原生组件,比如说ACR管理,ACK是关于K8S的集群、EDAS、Serverless等。EDAS云效就像大脑,EDAS更像综合性管理平台,为我们解决运维上配置文件管理和服务治理等问题,通过EDAS快速解决日志管理、开发人员快速定位日志和运维人员快速平稳回本等。
云原生数据库、PolarDB、Redis解决了开发和生产上的问题。
7、产品上云的进程及成果
从去年9月份到今年9月份,通过5个版本迭代后完成了整体上云,版本迭代数量提升了100%多。使用云效后降低了运维门槛、运维成本、使用云原生组件的技术门槛和开发成本,整体成本大概下降了25%到35%。
以上内容是E联智校在实施使用云效后的效果,依托云效解决了产品和架构的问题,完成产品上云和项目转变的过程,感谢E联智校冯涛老师对云效的信任和肯定,希望云效可以陪伴他们不断进步。
如果你也有故事要分享,请后台留言联系我们,一起打造10倍效能提升案例集。
我有话说: