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


【源创会预告】1024 程序员节(的前两天),相约开源PHP办公室,我们一起聊 AI!>>>

腾讯宣布开源 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
  • 丰富生态,开源更多云原生相关的插件和组建

相關推薦

2023-11-01

nbsp;版本发布 v0.0.14 atest 是一款用 Golang 编写的、开源的接口测试工具。 你可以在容器中启动: docker run --network host \ linuxsuren/api-testing:master 或者,直接下载二进制文件后启动: atest server --local-storage /var/www/sa

2023-08-18

支持,支持云储存分片上传(阿里云、百度云、华为云、腾讯云、FTP、七牛云、UCloud、又拍云) 第三方短信支持(阿里云、腾讯云、华为云、百度云、253云通讯、聚合、七牛云、融云、赛邮、UCloud、云片、网易云) V7.0.0

2022-12-22

务框架。为了让 Spring Cloud 用户能够更快速更全方位接入腾讯的开源微服务套件,也为了让社区应用开发者可以多一个国产的 Spring Cloud 套件的选择。 腾讯在同期也将 Spring Cloud Tencent 进行了开源 ,默认对接了北极星强大的微服

2023-08-19

支持,支持云储存分片上传(阿里云、百度云、华为云、腾讯云、FTP、七牛云、UCloud、又拍云) 第三方短信支持(阿里云、腾讯云、华为云、百度云、253云通讯、聚合、七牛云、融云、赛邮、UCloud、云片、网易云) V8.0.0版

2023-11-10

支持,支持云储存分片上传(阿里云、百度云、华为云、腾讯云、FTP、七牛云、UCloud、又拍云) 第三方短信支持(阿里云、腾讯云、华为云、百度云、253云通讯、聚合、七牛云、融云、赛邮、UCloud、云片、网易云) V8.5.0

2023-06-25

开发微信营销插件的基石 Fastcms 是真正意义上的插件化开源项目,支付,搜索,订单催付,附件水印,微信自动回复,微信扫码登录,等等都可以做成插件,即插即用,无需重启服务器。 Fastcms 中的文章即是商品,通过插件可

2022-10-26

MyCms 是一款基于 Laravel 开发的开源免费的开源多语言商城CMS企业建站系统。 MyCms 基于 Apache2.0 开源协议发布,免费且可商业使用,欢迎持续关注我们。 V3.9 更新内容 新增:模板自定义配置 新增:读取模板配置函数 新增:模

2023-05-30

DBCart 企业级开源 (多语言) 商城系统,使用 PHP 语言基于 Laminas + Doctrine 2 组合框架开发完成。可定制、多终端、多场景、多支付、多语言、多货币等特性。 严谨的安全机制,可靠稳定; 方便的操作管理,节约时间; 清晰

2022-12-11

DBCart 企业级开源 (多语言) 商城系统,使用 PHP 语言基于 Laminas + Doctrine 2 组合框架开发完成。可定制、多终端、多场景、多支付、多语言、多货币等特性。 严谨的安全机制,可靠稳定; 方便的操作管理,节约时间; 清晰

2023-09-13

共进|2023 Google 开发者大会精彩演讲回顾 DBCart 企业级开源 (多语言) 商城系统,使用 PHP 语言基于 Laminas + Doctrine 2 组合框架开发完成。可定制、多终端、多场景、多支付、多语言、多货币等特性。 严谨的安全机制,可靠稳

2023-11-09

DBCart 企业级开源 (多语言) 商城系统,使用 PHP 语言基于 Laminas + Doctrine 2 组合框架开发完成。可定制、多终端、多场景、多支付、多语言、多货币等特性。 严谨的安全机制,可靠稳定; 方便的操作管理,节约时间; 清晰

2023-01-20

支持,支持云储存分片上传(阿里云、百度云、华为云、腾讯云、FTP、七牛云、UCloud、又拍云) 第三方短信支持(阿里云、腾讯云、华为云、百度云、253云通讯、聚合、七牛云、融云、赛邮、UCloud、云片、网易云) V5.6.0

2023-09-05

Meta AI 宣布推出一款涵盖 122 种语言变体的多语言阅读理解数据集,名为 Belebele。“我们希望这项工作能够引发围绕 LLM 多语言性的新讨论”。 BELEBELE 是首个跨语言并行数据集,可以直接比较所有语言的模型性能。该数据集涵

2023-11-23

企业快速上云,快速迭代。适合用于微服务学习和商用,开源免费。 Simple Admin Core/Job/MCMS/FMS v1.2.3 更新 介绍 核心模块 Core, 定时任务模块 Job, 消息中心模块 MCMS, 以及文件管理模块 FMS 均已升级至 v1.2.3 本次更新 更新: 更新