首页 > 其他分享 >腾讯TSF

腾讯TSF

时间:2022-11-08 18:34:49浏览次数:60  
标签:数据中心 服务 应用 TSF Consul 注册 腾讯

腾讯分布式服务框架 (Tencent Service Framework,以下简称 TSF) 是一个围绕着应用和微服务的 PaaS 平台,提供应用全生命周期管理、数据化运营和立体化监控等功能。

TSF 拥抱 Spring Cloud 微服务框架,帮助企业客户解决传统集中式架构转型的困难,打造大规模高可用 的分布式系统架构,实现业务、产品的快速落地。TSF 以腾讯云中间件团队多款成熟的分布式产品为核心基础组件,提供秒级推送的分布式配置服 务、链路追踪等高可用稳定性组件。此外,TSF 与腾讯云 API 网关打通,让企业轻松构建大型 分布式系统。

腾讯TSF_数据中心

服务注册发现 

TSF 服务注册发现包括三个角色,服务提供者,服务调用者和服务注册中心。服务提供者和服务 调用者将地址信息注册到服务注册中心,并从服务注册中心获取所有注册服务的实例列表。TSF 使用 Consul 作为服务注册中心。服务提供者和消费者使用 Spring Cloud Consul 组件来实现与 Consul 服务注册中心集群的通信。

Spring Cloud 支持的服务发现软件以及特性对比:

腾讯TSF_数据中心_02

Consul 介绍

Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其它分布式服务注册与发现的方案,Consul 的方案更“一站式”,内置了服务注册与发现框 架、分布一致性协议实现、健康检查、Key/Value 存储、多数据中心方案,不再需要依赖其它工具(比如 ZooKeeper 等)。使用起来也较 为简单。Consul 使用 Go 语言编写,因此具有天然可移植性(支持Linux、windows和Mac OS X);安装包仅包含一个可执行文件,方便部署,与 Docker 等轻量级容器可无缝配合。

Consul 的优势:

  • 使用 Raft 算法来保证一致性, 比复杂的 Paxos 算法更直接. 相比较而言, zookeeper 采用的是 Paxos, 而 etcd 使用的则是 Raft。
  • 支持多数据中心,内外网的服务采用不同的端口进行监听。多数据中心集群可以避免单数据中心的单点故障,而其部署则需要考虑网络延迟, 分片等情况等。zookeeper 和 etcd 均不提供多数据中心功能的支持。
  • 支持健康检查。etcd 不提供此功能。
  • 支持 http 和 dns 协议接口。zookeeper 的集成较为复杂, etcd 只支持 http 协议。
  • 官方提供 web 管理界面, etcd 无此功能。
  • 综合比较, Consul 作为服务注册和配置管理的新星, 比较值得关注和研究。

特性:

  • 服务发现
  • 健康检查
  • Key/Value 存储
  • 多数据中心

Consul 角色

  • client: 客户端, 无状态, 将 HTTP 和 DNS 接口请求转发给局域网内的服务端集群。
  • server: 服务端, 保存配置信息, 高可用集群, 在局域网内与本地客户端通讯, 通过广域网与其它数据中心通讯。每个数据中心的 server 数量推荐为 3 个或是 5 个。

Consul 客户端、服务端还支持夸中心的使用,更加提高了它的高可用性。

Consul 工作原理:

  • 当 Producer 启动的时候,会向 Consul 发送一个 post 请求,告诉 Consul 自己的 IP 和 Port
  • Consul 接收到 Producer 的注册后,每隔10s(默认)会向 Producer 发送一个健康检查的请求,检验Producer是否健康
  • 当 Consumer 发送 GET 方式请求 /api/address 到 Producer 时,会先从 Consul 中拿到一个存储服务 IP 和 Port 的临时表,从表中拿到 Producer 的 IP 和 Port 后再发送 GET 方式请求 /api/address
  • 该临时表每隔10s会更新,只包含有通过了健康检查的 Producer

Spring Cloud Consul 项目是针对 Consul 的服务治理实现。Consul 是一个分布式高可用的系统,它包含多个组件,但是作为一个整体,在微服务架构中为我们的基础设施提供服务发现和服务配置的工具。

应用生命周期管理 

TSF 提供从创建应用到运行应用的全程管理,功能包括创建、删除、部署、回滚、扩容、下线、 启动和停止应用。TSF 提供应用分组来实现应用的版本控制和灰度发布功能。同时,在 TSF 控 制台上可以设置自定义 JVM 参数。TSF 将每次操作记录下来,用户可以在应用的变更记录页面 中查看和搜索变更记录。

数据化运营 

TSF 提供全面的监控和分布式调用链分析工具,帮助用户把握应用上线后的运行状况。监控包括 IaaS 基础监控和应用监控。IaaS 基础监控的指标包括实例 CPU、内存、网络和磁盘 等,应用监控的指标包括应用的 QPS, 请求时间和请求出错率等。分布式调用链分析包括调用链查询和调用链详情。用户可以根据时间范围和服务名等条件来查询 一组调用链。调用链详情显示了请求经过每个服务的层次关系和耗时情况等信息。


应用生命周期管理相关名词

腾讯TSF_数据中心_03


关注公众号 soft张三丰 

腾讯TSF_spring_04

标签:数据中心,服务,应用,TSF,Consul,注册,腾讯
From: https://blog.51cto.com/u_15501087/5834174

相关文章