课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在前几期的文章中给大家简单介绍了云原生编程技术应用注意事项以及应用案例等内容,而本文我们就通过案例分析来简单了解一下,云原生编程技术的作用分析。
高弹性可扩展
系统可以在应用服务层和数据库层支持横向扩展。
应用方面:通过微服务架构,容器化部署,技术平台可以感知服务器负载,弹性伸缩服务节点,实现集群扩/缩容,快速补充计算能力。
数据库方面:数据库支持快速扩容读节点,以支持更多并发请求,同时租户实现数据隔离,并可根据负载实现跨库迁移。
微服务化
在微服务架构和设计阶段:
引入MDD领域驱动方法论进行应用架构设计和领域模型设计;
按照微服务的设计原则进行服务的拆分和职责、关系定义,确定服务接口和领域模型;
作为一个复杂的ToB应用,按照如下原则进行微服务的拆分:
可用-拆分的模块能够满足应用的需要;
好用-拆分的模块能够通过比较简单、清晰的方式组成应用,服务应用价值;
美-用简单的方式表达复杂问题;业务人员容易理解。
端云联调方案
采用微服务架构后,每套环境部署需要30+的微服务容器,如果开发阶段存在多特性并行,为每个特性分支单独部署环境,资源消耗太大。为此,引入了网关、全链路流量打标控制技术、端云联调技术,用基线环境+增量修改的应用叠加出项目开发环境,以小代价快速拉起一套完整的开发调试环境,降低了开发成本。同时开发人员也可以将本地电脑直接注册到微服务环境中去,在本地完成上下游业务的验证和测试,极大地提高了开发人员的工作效率以及提交代码的质量。
离线数据分析
早期,的数据库只有OLTP,数据存储在MySQL里,随着数据量的增多,统计分析类的查询不仅自身查询时间长,还消耗了在线交易库的资源,影响在线交易的响应时间。仅仅通过云原生数据库PolarDB,进行读写分离,只能缓解一部分查询压力。
针对系统中一些实时性要求不高的分析,引入了数据仓库进行离线数据的处理,通过DataWorks工具进行ETL和统一调度,在MaxCompute中进行大数据指标计算和标签计算。
全链路灰度方案
的系统,实现了从前端到后端服务、消息队列、定时任务的全链路灰度。
前端静态资源:区分灰度静态资源和正式环境静态资源。登录后由登录信息里的租户,确定应该路由到哪个环境。
消息队列:区分灰度消息队列和正式消息队列。根据环境变量进行消费
定时任务:定时任务的任务执行方,通过环境变量和租户名单,来决定是否执行。
后端Rest接口:在Nginx中通过lua脚本,解析url路径,根据灰度名单中的租户信息进行路由。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。