2.1.6 基于TarsGo的云原生微服务架构演进基于TarsGo的云原生微服务架构演进 利开园 2020.11.22 ’ alt=‘OCR图片’/> 工作经历 腾讯Docker容器平台开发 TARS服务的基础运行环境和运营平台 腾讯TARSGo框架开发 TARS的GO语言实现 腾讯云开发业务后台开发 使用TARSGo,实现TARS+K8S的方案 GOPHER CHINA 2020 中国 上海 / 2020-11.21-22 CONTENTS 目录 $ \textcircled{1} buffer/no_delay参数调整 使用指针传结构体参数 避免使用反射 避免大量协程读写同一个channel 流量管理 南北流量 Tars API Gateway 东西流量 名字服务+直连节点 集群流量分组 Set方案 IDC分组 TARS名字服务与Set功能 Server A Server B 写死IP 服务发现 ↓ Set模型+服务发现 隔离故障域 Set功能的优点: 21-22 TARS的云原生演进 云原生的价值 +老板:节省资源与人力成本 +打工人:减少工作切换成本 TARS与K8S整合方案 +服务架构的平滑迁移 零代码服务改造 兼容原有名字服务等功能 重合功能的取舍 TARS+K8S整合方案 K8S:原生资源管理能力 TARS:保留开发架构及服务治理能力、增加端口自动分配能力 ’ alt=‘OCR图片’/> TARS+K8S方案及名字服务整合0 码力 | 32 页 | 8.76 MB | 1 月前3
2.3 高性能高可用的微服务框架TarsGo的腾讯实践 - 陈明杰陈明杰 腾讯 jessemjchen@tencent.com 探探 Gopher China 2019 Tars介绍 Tars是一个支持多语言、内嵌服务治理功能,与Devops能很好协同的微服务框架 基础设施(物理机、虚拟机、容器) ’ alt=‘OCR图片’/> 开发框架-基于TARS协议的RPC框架实现快速开发 module TestApp { struct LoginInfo{ 服务治理-分布式跟踪 利用开源的Zipkin实现分布式跟踪 框架内部嵌入跟踪锚点使用对业务透明 ’ alt=‘OCR图片’/> OSS-运营web化 提供Open API,可定制自己的OSS系统 TARS 服务管理 运维管理 Prajna Robin StressTest Test TestApp set AccountServer HelloJavaServer HelloServer OverloadServer r TracingJavaFourServer TracingJavaOneServer TracingJavaTwoServer TestJava TestTaf ddd denisApp tars windweitest 服务管理 发布管理 服务配置 服务监控 特性监控 配置列表 添加配置 服务名称 文件名称 最后修改时间 操作 TestApp.TracingJavaFourServer0 码力 | 24 页 | 7.25 MB | 1 月前3
TarsGo微服务开发实践-利开园## 关于我 2015至今 腾讯 ## Docker TarsGo Tars+K8S DevOps ## 目录 1. RPC 2. 日志 3. 监控 4. 调用链 5. 网关 6. 错误码 7. 配置 8. 云原生 9. 标准化 ## 背景 • Tars是腾讯开源的微服务解决方案 · 高性能的RPC框架 • 丰富的服务治理能力 丰富的服务治理能力 • 支持Golang/Cpp/Java/PHP/Nodejs • 腾讯内部(TAF)曾经应用最广的开发框架 • Tars应用实践:https://github.com/tarscloud/gopractice ## RPC:不应该只是RPC int sum(int a, int b); 接口定义 type calServerImp struct{} 服务端 func (c *calServerImp) error) { return a + b, nil } client := &App.CalServer{} imp := &calServerImp{} comm := tars.NewCommunicator() 客户端 client := &App.CalServer{} comm.StringToProxy("App.CalServer.Obj"0 码力 | 15 页 | 4.23 MB | 2 年前3
ServiceComb 介绍|物理机|REST|24U64G1G|CSE SDK|1|1k|100|107126|0.933|| |机型|协议|规格(CPU/内存/网卡)|Tars|实例数|报文大小|调用线程数|TPS|时延(ms)|服务| |VM|RPC?|8U16G1G|Tars|1|1k|100|75386|1.32|2| |机型|协议|规格(CPU/内存/网卡)|SpringCloud|实例数|报文大小|调用线程数|TPS|时延(ms)||0 码力 | 16 页 | 1.26 MB | 2 年前3
Apache APISIX How to implement plugin orchestration in API Gatewaycommitter, Apache SkyWalking • Founder of 360 Open Source Committee; Tencent TVP • Member of TOC of TARS Foundation • More than 40 security patents  Source Protocol apisix Cloud-Native API Gateway Applications 8 图 Tars Dubbo MQTT QUIC AI-Plane Monitoring Security etcd |Tars|实例数|报文大小|调用线程数|TPS|时延(ms)|服务| |VM|RPC?|8U16G1G|Tars|1|1k|100|75386|1.32|2| |机型|协议|规格(CPU/内存/网卡)|SpringCloud|实例数|报文大小|调用线程数|TPS|时延(ms)||0 码力 | 16 页 | 1.45 MB | 2 年前3
13 Istio 流量管理原理与协议扩展 赵化冰authority, path, method, headers| |gRPC|HTTP 2 path|Request-Headers(Delivered as HTTP2 headers)| |TARS|ServantName|ServantName, FuncName, Context| |Dubbo|service name|service name, service version, service 缺省路由 • Dubbo version-based routing • Dubbo traffic splitting ## • 后续规划: • 其他协议支持:Thrift,Redis,TARS… 在 TCM 中提供托管的 Aeraki,为客户提供第三方协议支持  AI-Plane Tars Dubbo TCP UDP MQTT QUIC Monitoring Security etcd 。在创业之前, 在360做企业安全, 360开源委员会的发起人, 腾讯的TVP, TARS基金会的TOC成员, 在安全领域有四十多个专利, 最近三年全职在做服务端的开源项目开发。在极客时间专栏著有OpenResty从入门到实战。 












