云计算技术发展进入到了第二个十年,微服务、容器化、Serverless等技术飞速发展,云原生成为潮流。云原生因云而生,它根植于开发者,并释放最大的云价值。腾讯云 Techo Hub 技术巡回武汉站,多位技术专家聚焦云原生技术,从云原生微服务治理架构、服务治理中心,到边缘云自治引擎,以及云原生时代的开发新思路和研发效能管理等角度,分享了云原生时代的高效开发实战。
云原生微服务治理架构深度解读和实践
微服务是云原生的代表技术之一。在微服务的演进过程中,为了最大化利用微服务的优势,保障系统的高可用性,需要通过服务支撑组件来协助服务间有效的协作,这就是服务治理的范畴。腾讯云中间件高级工程师童子龙老师在演讲中,深入讲解了云原生微服务治理架构和实践。
首先,童子龙老师介绍了微服务的一些挑战。微服务架构下,单体系统被拆分成不同的应用集群和服务集群,并由不同的团队负责;分布式调用增加了序列化、路由、负载均衡等一系列的新技术栈;微服务架构还带来了框架协议不统一的问题;微服务框架多种多样,诸如Spring Cloud、Dubbo、gRPC等主流开源框架,还有企业自研框架,由于每套框架都有一套定制的治理框架,维护起来成本极高。面对这些难题,微服务治理需要站在全局的视角,进行分层架构设计。
童子龙老师介绍说,从扩展性和易用性角度考量,分层设计给治理组件提供了更好的可扩展性,制定每个治理模块的治理标准,提供SPI扩展,企业可根据自身平台的业务场景实现微服务治理分层架构。此外,微服务依赖的中间件种类多样,平台架构可以将各种中间件能力下沉,并集中管理,抽象出各个中间件能力模型,各中间件按照能力模型实现Client侧能力,使得任意框架都能自由使用各开源中间件,实现开源组件的全面兼容。
童子龙老师表示,未来,腾讯云将开源一套符合云原生多Runtime标准范式的一站式微服务管理平台,与社区开发者一起共建微服务生态标准。
腾讯微服务治理中心生产演进-海量微服务治理生产实践
腾讯云中间件高级工程师单家骏老师在演讲中首先介绍了微服务治理的概念和重要性。微服务治理是为了解决微服务在开发运行时所遇到的问题,从而提供数据观察和策略控制等组件及框架。在众多场景下,微服务治理是必不可少的,包括新业务上线时的灰度流量接入;生产、开发、测试环境的隔离;多地域容灾及故障切换;服务出现问题时的及时告警处理;大型活动所需要的流量保障等场景。
为了应对服务框架多样化,微服务语言多样化,缺乏一站式的体验,非云原生,迁移困难,且无法获得社区支持等企业级微服务治理挑战,企业需要一个拥有一体化、一站式的功能体验,具有可视化、可度量、治理能力下沉、代码级解耦、且对环境没有依赖等特点的云原生的微服务治理中心。单家骏老师接下来详细介绍了腾讯从虚拟机单体架构到容器化微服务架构的发展历程及微服务治理生产实践。
边缘云自治引擎
边缘云的诞生使云的便利性和可访问性更靠近创建和实施数据的地方。通过在边缘侧收集、存储和处理数据,企业可以快速获得有意义的洞察力,并立即采取行动。 运维的复杂性是边缘云部署和管理的最大挑战。如何同感裸机搭建边缘云?如何配置和优化集群的存储和网络性能?如何拓展集群加入新的节点?往往需要专业人员才能做到。
英特尔边缘云系统架构师杨斌老师在演讲中详细介绍说,经过多年探索与实践,英特尔物联网边缘云团队在边缘云中引入自治引擎,最终可以实现一键式自动部署边缘云,安全自动地接入新的节点,并自动为新增节点确定在集群中的角色。
教育行业如何拥抱云原生技术--实际业务场景下的落地实践与思考
对于在线教育行业来说,新功能上线的速度至关重要。在招生方面会开展线上、线下、甚至跨界等各种各样的营销活动,因此在技术层面就需要支撑这些活动的快速上线,这是在线教育企业的重点同时也是难点;在传统模式下,为了增加新功能,或者优化、调整某些功能板块,经常会导致整个系统出现问题,企业既想追求稳定可靠,又想追求更多的新功能,这其中的矛盾又是教育行业面临的另一个痛点;在线教育企业既希望举办的每一场活动都会产生爆款,吸引很多的学员,又怕后端技术支持不住,服务器压力瞬间的高爆发,或者数据量太大导致系统出现问题,这是传统架构面临的第三个问题。
君工教育创始人邓君老师表示,解决以上难点的方法就是“云原生”。在他看来,云原生技术是容器化 + 微服务 + DevOps + CD的组合。
邓君老师接下来详细介绍了基于腾讯云 SCF + COS 轻松实现录播课程管理的实践内容。
邓君老师表示,技术和工具永远为需求服务,基于腾讯云产品矩阵构建可弹性扩展的无服务器后端,基于实时音视频 TRTC + 云函数 SCF 打造专属云端课堂,帮助君工教育成功拥抱云原生。
Less is More Serverless时代的研发效能管理
十多年前,应用架构多为单体应用,部署形式是一台服务器加一个数据库,只要维护好这台服务器就可以基本保证服务的可用性。随着业务的增长,有更多的开发人员一起在单体应用上开发特性,由于单体应用内的代码没有明确的物理边界,因此会遇到各种代码冲突,这就需要人工进行协调以及完成大量的合并冲突,研发效率直线下降。此时需要把单体应用拆分成可以独立开发、独立测试、独立部署的微服务应用,服务和服务之间通过API通讯,方可解决上述难题。
在架构的演进过程中,研发运维人员的关注点逐渐从服务器上移开,希望借由平台系统管理机器,而不是由人工进行管理,这就是Serverless(无服务器)概念的雏形。当然,Serverless并不是没有服务器就能够进行计算,对于开发者来说,无需了解底层的服务器情况,也可以使用到相关资源。
腾讯云Serverless专家架构师杨政权老师介绍说,通常 Serverless 包含两个相关的概念:一是FaaS(Function as Service),函数即服务,通过细粒度的函数和场景,获得极致弹性。二是BaaS(Backend as Service),后端即服务,大量开箱即用的云上功能提升研发效能。
杨政权老师接下来详细介绍了Serverless 应用开发存在的诸多挑战和对策,并分享了Serverless 的落地案例。最后,杨政权老师表示,未来Serverless 将向四个方向发展。一是Serverless + X:随着Serverless概念的流行,未来期望可以看到越来越多的产品Serverless化,从PaaS平台到数据库存储,从消息中间件到边缘计算等,逐步迈向全栈Serverless化。 二是Serverless as Engine:作为通用的计算资源,Serverless在成本和维护性方面具有巨大的优势,像传统的虚拟机一样,虽然对于用户无感知,但是Serverless作为基座和引擎为应用提供算力。三是Serverless DX:不仅仅是部署,对于Serverless应用的开发、调试、监控、持续集成等开发者工具日趋成熟,围绕Serverless构建的开源生态有大量开箱即用的组件、模板快速启动。四是Methodology,从单体架构或者微服务架构如何迁移到Serverless架构,需要有更加成熟的方法论,来指导开发者进行Serverless化的架构设计。
云原生时代前后端分离开发新思路
微信云托管是微信团队联合腾讯云推出的后端项目全托管服务。对于微信生态应用开发采用前后端分离架构的场景,云托管服务可实现免运维、免服务器管理,从代码管理到CI/CD流水线部署发布,提供全链路、低成本、企业级的云原生解决方案。
腾讯云托管高级工程师邓南京老师在演讲中详细介绍了微信官方新模式架构相较于传统模式具有三大优势:大幅降低开发成本、链路高安全、请求加速,并现场演示了微信云托管的使用方法和实战案例。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。