go - grpc-gateway 与 Twirp RPC 有什么区别
问题描述
我们已经有了提供 rpc 和 rest 端点的Twrip-RPC 。那么为什么我们需要 grpc-Gateway。与 twirp 相比,它提供了哪些优势。是不是我们可以为 grpc 网关提供自定义端点是唯一的区别。Twrip-rpc 不能做什么 grpc-gateway?
解决方案
Twirp 和 gRPC 网关类似。他们都从 protobuf 文件定义中构建 API 服务。
主要区别:
- gRPC 仅在 HTTP2 上使用 protobuf,这意味着浏览器无法轻松地直接与基于 gRPC 的服务通信。
- Twirp 在 Protobuf 和 JSON、HTTP 1.1 和 HTTP2 上工作,因此任何客户端都可以轻松通信。
- gRPC 是一个具有许多功能的完整框架。很强大的东西。
- Twirp 很小很小。只有一些基本功能,但它更容易管理。
推荐阅读
- python - 有没有办法在 Python 中动态构建列表
- jquery - Jquery在表单提交中获取所有选中的复选框值
- python - CSV 的键值不正确导致键错误
- java - 将类中的对象添加到数组中
- python - 我无法向 django rest 框架发送帖子
- jquery - 如何在 Fancybox 中将视口视为宽度 = 设备宽度
- javascript - 如何监听在 vue 组件之外发出的事件
- python-3.5 - 如何检测与背景颜色几乎相似的物体?
- c++ - Windows 上的 std::filesystem "root_name" 定义被破坏
- homebrew - brew --prefix libxml2 给了我一个不存在的路径