- 主题:你们用哪个rpc框架?
grpc+protobuf,哪部分是很难维护的?能不能详细说说?
grpc用http2作为传输层,几乎可以用任何http proxy去做负载均衡和reroute
protobuf在绝大多数应用可接受的overhead下使api进化变得很容易。
http+openapi怎么解决的?
【 在 Erlang 的大作中提到: 】
: HTTP + OpenAPI(Swagger)最好
: RPC徒增复杂性,而且在大型组织中几乎不可维护
: 【 在 GoGoRoger (GoGoRoger) 的大作中提到: 】
: ....................
- 来自「最水木 for iPhone12,8」
--
FROM 75.31.75.*
hmmm,暂时没碰上
即使不是monorepo,因为不是必须要最新的schema,同步schema不是特别痛苦
不知道你是不是这个意思?
【 在 Erlang 的大作中提到: 】
: 维护schema文件在各个项目中
: 【 在 lambdai 的大作中提到: 】
: : grpc+protobuf,哪部分是很难维护的?能不能详细说说?
: ....................
- 来自「最水木 for iPad Air (3rd generation)」
--
FROM 75.31.75.*
看了一下openapi:把spec分发做到核心里面,这个在传统rpc实现里面依赖构建系统和版本控制系统。我估计这个需求在monorepo里面提升不大,但是可以想象在复杂的供应链环境应该有挺大帮助的
还有一些传统rpc靠annotation解决的问题看起来在openapi都是头等公民。
一时openapi生成的stub质量如何,但如果这个问题解决好的话,应该会有很多新用户喜欢的
【 在 Erlang 的大作中提到: 】
: 事实上相对HTTP + OpenAPI的方式,没有带来任何额外的好处,徒增了一些复杂性
: 【 在 lambdai (lambdai) 的大作中提到: 】
: : hmmm,暂时没碰上
: ....................
- 来自「最水木 for iPhone12,8」
--
FROM 75.31.75.*
http3倒是减少了握手的roundtrip
http2的链接复用很好,也定义了拥塞控制
h2header经过了hpack压缩也好了很多,不过和精简的pb还是没法比
不过好处也很明显,任何一个http2 proxy都可以拿来做lb,不用等rpc的官方去做
【 在 GoGoRoger 的大作中提到: 】
: 问一下哈,是不是http1.1或者http2.0的协议,就不存在tcp三次握手四次挥手的问题?我老是觉着http比较低效。
:
: 【 在 lambdai 的大作中提到: 】
: ....................
- 来自「最水木 for iPhone12,8」
--
FROM 75.31.75.*
说到点上了。
grpc其实有传输层的抽象,google应该是有类似rdma实现的传输层,应该用的也不多
【 在 hgoldfish 的大作中提到: 】
: 微服务体系,不止要高效,还要周边流控,负载均衡等功能。
:
: 【 在 tangramor (唐图) 的大作中提到: 】
: ....................
- 来自「最水木 for iPhone12,8」
--
FROM 75.31.75.*