近日,腾讯宣布,其TARS微服务开发框架已成功移植至ArmCPU架构。
TARS是一个成熟的高性能微服务开发框架,因其高性能及具备完善的微服务治理方案而广为人知。现在,开发人员可以无缝编程和生成基于Arm服务器的代码。针对Arm的TARS微服务架构可通过Akraino Blueprint了解。在本文中,我们将介绍4G和5G网络中,移植到Arm架构的TARS项目基本架构和部署场景。
TARS和Arm架构移植概览
TARS支持多种编程语言,包括C++、Golang、Java、Node.js、PHP和Python,使Arm平台的开发人员和基于Arm系统的企业能够快速构建稳定可靠的分布式应用。TARS在腾讯经过10多年的大规模使用和迭代,广泛应用于腾讯的在线社交、金融服务、边缘计算、汽车、视频、游戏、地图、应用市场和安全等数百项核心业务中。
2018年6月,腾讯将TARS捐赠给Linux基金会,目前微服务的规模已经超过百万节点,完美实践了业界标准的DevOps理念和腾讯的海量服务之道。过去一年里,Arm与腾讯密切合作,成功完成了TARS到Arm架构的移植,并完成了AR/VR以及车联网项目。这意味着TARS不仅被应用于传统行业,今后将被应用到更多的创新项目中,企业和个人用户也将不断增加。
Arm软件生态高级总监Kevin Ryan表示:“Arm完全支持腾讯构建的TARS微服务生态。Arm Neoverse平台将在下一代云边缘计算的基础设施中实现大量微服务的横向扩展,我们期望为广大开发人员在TARS上部署新项目和应用提供更多支持。”
从技术架构的角度来看,基于TARS作为微服务平台的Blueprint可以抽象为四层:
硬件层:它能够在市场上大部分的硬件中运行,支持基于多种架构的服务器,包括ArmNeoverse平台。
IaaS层:它可以部署在虚拟环境中,支持虚拟机、容器以及OpenStack、Kubernetes等其他IaaS主流平台。
PaaS层:TARS作为Blueprint的微服务框架,可以提供高性能的RPC调用,支持在较大规模的横向扩展场景中高效部署微服务,并提供便捷的服务监控功能。
SaaS层:可完全根据用户的需求制定并实现相对应的解决方案。
从网络架构看,Blueprint可以部署在4G和5G网络中,需要注意两点:
将数据发布到边缘MEC平台。数据发布策略可以根据不同的应用进行配置。
具备边缘与其他边缘以及远程数据中心通信的能力。在某些情况下,边缘数据处理无法满足应用的要求。因此我们需要从不同的边缘收集数据,并为应用得出“结论”。
腾讯TARS开源项目负责人Mark Shan说:“Arm一直是我们开发部署TARS微服务框架的战略合作伙伴。我们已经完成了将TARS移植到基于Arm服务器的LFEDGE Akraino Blueprint上的工作,期待未来继续与Arm在TARS微服务生态中进行更多的合作。”
结论
从易用性和高性能角度来讲,TARS可以快速构建系统并自动生成代码。同时,TARS支持多种编程语言,包括C++,Golang,Java,Node.js,PHP和Python。TARS可以帮助开发人员和企业以微服务方式快速构建自己稳定,可靠的分布式应用程序,从而专注于业务逻辑以有效提高运营效率。
来源:腾讯开源