【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

专访卢政:TSF 如何助力企业微服务开发

  • 2019-01-08
  • 本文字数:1691 字

    阅读完需:约 6 分钟

专访卢政:TSF如何助力企业微服务开发

12 月 15 日,腾讯云+社区开发者大会在北京举行,腾讯云微服务平台产品负责人卢政在大会上做了《腾讯云 TSF 平台 ServiceMesh 最佳实践》的分享,在大会上,InfoQ 记者对卢政进行了采访,了解了 TSF 的设计理念和发展情况,以及应用案例等。


TSF 是腾讯云打造的微服务解决方案,其底层支持 Kubernetes 和虚拟机,框架层使用 Spring Cloud+Netflix OSS 等,同时接入 CNCF 的一些云原生技术。2018 年,TSF 在平台落地 Istio,并发布 TSF Mesh 2.0,像企业用户提供了 Service Mesh 相关的最佳实践。


关于 TSF,InfoQ 曾发布两篇技术文章,可供了解参考:


日调度 5 万亿次,腾讯云微服务架构体系 TSF 深度解读


腾讯云 Service Mesh 生产实践及架构演进

TSF 的诞生及发展历程

据卢政介绍,TSF 的前身叫 CAE 平台,最早在 2010 年在腾讯内部使用。15 年结合微服务理念进行改造,到 16 年年中,开始接入 Spring Cloud,向业界的主流技术靠拢。到 17 年,开始提炼出解决方案放到腾讯云上对外提供服务,这就是 TSF。17 年 Service Mesh 开源框架 Istio 发布,TSF 在早期就尝试使用,18 年 Istio 发布 1.0 版本,TSF 迅速跟进,推出了自己的 Service Mesh 服务 TSF Mesh 2.0. 总的来说,TSF 在技术上的发展追求的是和业界微服务的主流开源技术同步,同时在这些技术基础上做了一些创新,团队也一直在探索新技术的落地和应用。


TSF 对公众开放,是因为腾讯云之前已经解决了 IaaS 层的研发,接下来他们认为要解决开发者的问题,需要给开发者提供更好的工具和平台能力,减少应用生命周期管理、服务治理、日志监控等模块的重复开发,而这也是 TSF 的目的和价值所在。



TSF 架构


其中,TSF 提供的核心能力包括:服务治理,应用生命周期管理,配置中心,分布式事务,数据化运营能力(日志/监控/告警/调用链等)。


为了方便应用的开发,TSF 提供了中间件平台,包括分布式计算调度、配置和事务能力,微服务 API 网关,以及在 Spring 框架层面打通消息队列 CMQ/CKafka。


TSF 的容器服务基于腾讯云 TKE 容器 PaaS 平台,TKE 是腾讯云研发的基于 Docker 和 Kubernetes 的公有云 PaaS 平台,提供了完整的 Kubernetes 集群部署能力。


除了支持容器之外,TSF 还支持虚拟机环境,官方的 Istio 并不支持虚拟机,TSF 对官方版本进行了扩展,以提供更多功能,主要包括:


  1. 平台解耦,支持 Kubernetes、虚拟机、裸金属服务器环境;

  2. 新旧兼容,支持 Spring Cloud 应用、Service Mesh 应用互通,统一治理;

  3. 提供多租户隔离和管理支持;

  4. 提供调用链日志持久化,以及监控日志统一收集;

  5. 解决 Mixer 缓存穿透问题,Envoy 流量优化接管,Pilot 性能优化等;

  6. 未来还计划支持私有 RPC 协议。


在其它方面,主要是集成了腾讯云提供的能力,如容器镜像托管平台 Tencent Hub 等。


从 TSF 的发展历程可以看到,它其实是紧跟着一些关键开源项目如 Kubernetes、Spring Cloud、Istio 的脚步发展,力争将前沿技术融入到能用于生产环境的解决方案中去。在未来 TSF 也会沿着这个逻辑,继续和开源社区紧密结合,同时也会开始回馈社区。另外 TSF 的研发重点会是结合客户需求做整合和优化。


TSF 适用于想开发微服务,以及进行微服务改造的用户。目前,已有财付通网贷、零售业务中台、汽车物联网等解决方案,另 TSF 已经帮助某银行、某海关在 TSF 上落地了后台系统,使用了最新的容器和微服务技术。



(腾讯汽车物联网技术中台)


对于开发者来说,并不是所有的系统都适合用微服务来开发,卢政认为,是否使用微服务,还是要看具体的场景。比如:


  • 面临用户快速增长,需要应用具备横向扩展能力,这种就是微服务的典型场景;

  • 另外,当需求多变,业务面临灵活快速扩展的时候,也适合用微服务来进行快速的开发;

  • 对于产品集成多个功能的情况也适合用微服务,将产品拆分为多个模块,每个团队负责一个服务来小规模的快速迭代。


对于稳定的系统没有必要用微服务强行改造,利用如今的混合云技术,可以做到将遗留系统与微服务做很好的对接。


微服务在互联网企业中已经有许多成功的案例,但是,深入到传统行业,微服务架构势必要做一些调整以适应行业特点。TSF 通过使用最新的技术打造具体行业的解决方案,为我们做出了有益的探索。


2019-01-08 10:007059
用户头像

发布了 164 篇内容, 共 103.4 次阅读, 收获喜欢 391 次。

关注

评论

发布
暂无评论
发现更多内容

11:高级部分-MySQL

Yeats_Liao

数据库 后端 10月月更

飞书中板栗看板适合做复杂任务管理吗

PingCode

看板在项目管理中的价值

PingCode

2022《中国企业敏捷实践白皮书》调研全面启动

PingCode

华为云从入门到实战 | 云服务概述与华为云搭建Web应用

TiAmo

华为 华为云 10月月更

半小时看懂互联网运营,学会做局与破局

蔡农曰

运营 互联网+ 互联网行业 互联网运营

week3 - 作业

in9

SAP | 来了解一下事件吧

暮春零贰

SAP 事件 10月月更

第九期 - 模块四

wuli洋

学术加油站|FLAT,一个轻量且高效的基数估计模型

OceanBase 数据库

深度分析React源码中的合成事件

goClient1992

React

经常会采坑的javascript原型应试题

loveX001

JavaScript

9:多表查询-MySQL

Yeats_Liao

数据库 后端 10月月更

【资损】分布式系统并发互斥设计

小明Java问道之路

Java 架构 10月月更

个人头像人工智能生成工具,上线一天就已赚了1万美金

程序员陆通

程序员 AI 赚钱 职场

关于前端面试你需要知道的知识点

beifeng1996

React

10:子查询-MySQL

Yeats_Liao

数据库 后端 10月月更

谈谈前端性能优化-面试版

loveX001

JavaScript

腾讯前端一面必会面试题(边面边更)

loveX001

JavaScript

面试官:你是怎样进行react组件代码复用的

beifeng1996

React

2022-10-30:给你一个长度为 n 的整数数组 rolls 和一个整数 k 。 你扔一个 k 面的骰子 n 次,骰子的每个面分别是 1 到 k , 其中第 i 次扔得到的数字是 rolls[i]

福大大架构师每日一题

算法 rust 福大大

极客时间运维进阶训练营第二周作业

chenmin

程”风破浪的开发者|python学习之注释

魏铁锤

学习方法 “程”风破浪的开发者

OMS 3.4.0 发布,打造更安全易用的数据迁移体验

OceanBase 数据库

数据湖(十六):Structured Streaming实时写入Iceberg

Lansonli

数据湖 10月月更

查看Spark任务的详细信息

程序员欣宸

大数据 spark 10月月更

AI读懂中国,文心方可雕龙

脑极体

流式计算引擎对比

穿过生命散发芬芳

10月月更 流式计算

一道SQL注入的简单题_wp

w010w

sql 网络安全 SQL注入 10月月更

虚拟化资源监控

阿泽🧸

10月月更 虚拟化监控

面试官:说说React-SSR的原理

beifeng1996

React

专访卢政:TSF如何助力企业微服务开发_架构_徐川_InfoQ精选文章