# 前言
最近自己摸一个小玩具,开始尝试 GRPC 和 Gateway,于是顺道体验了一下端口复用。
# 正文
本专案的具体细节:
层级 | 软件 / 包 |
---|---|
1 | Caddy |
2 | cmux |
3 | GPRC & Getaway |
后端先启动 GPRC 服务,随后 Gateway 连接 GRPC 提供 json 格式的接口,由程序内 cmux 包将流入的流量根据类型进行分流,分别传给 GRPC 和 Gateway,最后由 Caddy 根据连接类型进行反向代理。
cmux的关键部分:(具体使用请参照官方文档)
Caddy配置:
同理你也可以参照上面的配置方式配置负载均衡等操作,因为我的专案中 cmux 使多种流量聚合在了同一个端口上,所以我需要这么配置。
8小时劳动,8小时休闲,8个小时休息,下班!