V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
sandyskies
V2EX  ›  Go 编程语言

TarsGo 支持 protocol buffer

  •  
  •   sandyskies · 2018-10-12 11:24:26 +08:00 · 1843 次点击
    这是一个创建于 2235 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • Tars 是腾讯从 2008 年到今天一直在使用的后台逻辑层的统一应用框架 TAF ( Total Application Framework ),目前支持 C++,Java,PHP,Nodejs,Golang 语言。该框架为用户提供了涉及到开发、运维、以及测试的一整套解决方案,帮助一个产品或者服务快速开发、部署、测试、上线。 它集可扩展协议编解码、高性能 RPC 通信框架、名字路由与发现、发布监控、日志统计、配置管理等于一体,通过它可以快速用微服务的方式构建自己的稳定可靠的分布式应用,并实现完整有效的服务治理。目前该框架在腾讯内部,各大核心业务都在使用,颇受欢迎,基于该框架部署运行的服务节点规模达到上万个。

    • Tars 于 2017 年 4 月开源,并于 2018 年 6 月加入 Linux 基金会,项目地址 https://github.com/TarsCloud。

    • TarsGo 是 Tars 的 Go 语言实现版本, 于 2018 年 9 月开源, 项目地址 https://github.com/TarsCloud/TarsGo

    • Tars 协议是一种类 c++标识符的语言,用于生成具体的服务接口文件,Tars 文件是 Tars 框架中客户端和服务端的通信接口,通过 Tars 的映射实现远程对象调用。Tars 协议是和语言无关,基于 IDL 接口描述语言的二进制编码协议。

    • Protocol Buffers (简称 PB )是 Google 的一种数据交换的格式,它独立于语言,独立于平台,最早公布于 2008 年 7 月。随着微服务架构的发展及自身的优异表现,ProtoBuf 可用于诸如网络传输、配置文件、数据存储等诸多领域,目前在互联网上有着大量应用。

    • PB 协议是单独的协议,如果要支持 RPC,可以定义 service 字段,并且基于 protoc-gen-go 的 grpc 插件生成相应的 grpc 编码。

    • 本次 Tars 支持 protoc-gen-go 的 plugin,可以将 service 直接生成 tars 相关的 RPC 代码

    • 详细阅读 https://cloud.tencent.com/developer/article/1353058?s=original-sharing

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2867 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 12:00 · PVG 20:00 · LAX 04:00 · JFK 07:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.