首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

腾讯开源 tRPC,多语言插件化高性能 RPC 开发框架

出品|开源中国

腾讯宣布开源 tRPC ,一款基于插件化理念设计的支持多语言、高性能的 RPC 开发框架。首批开源支持 Go/Cpp 两种编程语言,预计接下来会开源更多编程语言的支持。

根据介绍吗,tRPC 通过对底层通信的封装提供 RPC 的调用方式,可以轻松的进行分布式应用开发;基于插件化的架构能支持多种业务通信协议,灵活对接各种微服务治理平台,帮助业务快速构建所需的微服务体系。

架构设计

tRPC 在架构设计上采用插件化设计思想,总体架构由 "框架" 和 "插件" 两部分组成, 其中虚线框内为 tRPC,中间的红色实线框为框架,蓝色实线框为插件部分。tRPC 将核心功能抽象封装成一个个独立的插件,然后由框架来负责这些独立插件的串联和拼装,从而实现框架所要支持的功能特性,通过这种设计使 tRPC 具备很强的开放性和可扩展性。此外框架还设计了 admin 管理接口,方便用户或者运营平台可以通过调用 admin 接口对服务进行管理。

主要特点

跨语言:基于 Protocol Buffers 来实现跨语言的服务通信。

多通信协议:支持多种通信协议,方便与不同框架进行互通(比如 gRPC)。

支持流式 RPC:更好地适用于大文件上传 / 下载、消息 Push、AI 类语音识别 / 视频理解等多种应用场景。

丰富插件生态:提供大量对接业界微服务组件的插件(比如 Consul/Promethues/Opentelemetry 等),方便用户构建适合自己的服务治理体系。

可扩展:基于框架插件化的设计,用户可以进行二次开发来扩展框架能力,比如:RPC 请求参数校验、鉴权、请求录制等。

流控和过载保护:提供多种应用场景下的流量控制和过载保护插件,防止服务因为访问突增造成过载而不可用。

项目规划

开源更多编程语言:Java、Python、Node

丰富生态,开源更多云原生相关的插件和组建

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OB5StBXb3K9ccscZKU5aF8-g0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券