Tars 是将腾讯内部使用的微服务架构 TAF(Total Application Framework)多年的实践成果总结而成的开源项目,目前已于4月10日正式对外开源。
作为支持多语言的高性能 RPC 开发框架和配套一体化的服务治理平台,Tars可以帮助企业或者用户以微服务的方式快速构建稳定可靠的分布式应用,它的设计灵感来源于采取分层思想,实现开发与运营之间的分离。目前该框架在腾讯内部,已经在 160 多个业务(如手机浏览器、应用宝、手机管家、手机QQ、手机游戏等)、1.6 多万台服务器上运行使用,基于该框架部署运行的服务节点规模达到上万个,经过了海量用户及数据量的考验。
与业界其他同类或相识的应用框架相比,Tars具有以下优势:
一是Tars提供了支持多语言(C++/Java)的高性能(性能可达40w/s)RPC开发框架,比如业界开源的Dubbo只支持Java,业界开源的Thrift、gRPC性能没有Tars好;
二是Tars具有针对服务进行治理的运营管理平台,比如名字路由与发现、部署/发布/扩缩容、立体化监控、日志管理、配置管理等,让系统的运行状态一切尽在掌握,而业界的Thrift、gRPC只是RPC通信框架,业务在它们之上仍要做很多开发;
三是Tars经过多年在腾讯不同业务上的实践和发展,其成熟度和稳定性更好。
Tars的名字来自星际穿越电影人机器人Tars,电影中的Tars有着非常友好的交互方式,任何初次接触它的人都可以轻松的和它进行交流,同时能在外太空、外星等复杂地形上,超预期的高效率的完成托付的所有任务。拥有着类似设计理念的 Tars 也是一个兼顾易用性、高性能、服务治理的框架,目的是让开发更简单,聚焦业务逻辑,让运营更高效,一切尽在掌握。
历经近十年探索,Tars终于正式开源,它更适合消息调用客户端和服务端比较明确的业务场景。开源地址为:https://github.com/Tencent/Tars。
关于Tars的详细技术介绍可以关注:
https://github.com/Tencent/Tars/blob/master/Introduction.md
免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。