关于添加gRPC回落的具体探讨 #1625
Replies: 2 comments 2 replies
-
关于 gRPC 和 cdn以及回源,我的笔记: 根据下面文章,http2理论上果然也是可以被cdn转发的, 但是 cloudflare回源是1.1,所以没法转发h2 果然cloudflare文档里说,cloudflare到 源站这一段 用的是 http1.1
但是我就不懂了,如果回源只是http1.1, 那它是怎么转发 gRPC流量的? gRPC不是强制 h2吗、 根据cloudflare官方博客 原来,cloudflare将 gRPC的 h2流量 转换成了 h1.1 流量 发送到源站
再根据
也就是说,如果源站是 http2的,则 cloudflare 会直接用 http2来访问 源站,但是这个仅限于 gRPC;普通的 http2连接是不行的。 这个问题的回答也证实了: https://community.cloudflare.com/t/is-traffic-between-cloudflare-and-origin-server-http-2/255471/2
|
Beta Was this translation helpful? Give feedback.
-
在verysimple v1.2.0 版本 中,grpcSimple 已经支持了grpc 回落 到 h2c。 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
举个例子,比如我是一个 山寨app的皮包公司,我的安卓app使用 gRPC连接我的服务器;同时我还想用我的服务器搭建私有
gRPC代理;我的想法是,打一枪换一个地方,比如使用月抛机,复制粘贴golang程序比部署 nginx配置文件快多了,因此我想用 v2ray回落,而不是nginx
皮包公司的想法:两个golang文件,一个皮包公司自己的app,一个v2ray,一个v2ray配置文件。
没有v2ray内置gRPC回落功能的办法:三个golang文件,皮包公司app,v2ray, caddy, l两个配置文件
此时,显然,回落加个grpc的servicename判断比较好
因该是不难的,毕竟gRPC的包是谷歌的,早就做好了。
总之,此discussion确定了 gRPC分流的非非必要性
比如,我是一个专门制作聊天app的皮包公司,使用gRPC,这个gRPC也不是我定的,我copy的其他开源聊天app源码里就用的gRPC;我的聊天app也许是非法的,所以我的素质很低下,根本不会配置什么nginx或者caddy,我希望配置文件越少越好。
我就是想利用这个聊天app作为我 科学上网的掩护,所以我同时在 v2ray中使用gRPC,并想按情况回落到我的聊天app。 那么回落的需求就来了。
为啥不用其它协议?有gRPC的优点啊。我说了这么多,为什么纠结gRPC,就是他延迟低,我喜欢
聊天app(外界可知的),浏览网页(我偷偷的用代理),都是需要延迟低,所以我这个假设正好对口
为啥不直接用 http/2 呢? 不过cdn, 现在这个形式,以后肯定越来越严,肯定首选能过cdn的。再说,根据我的假设,我的皮包公司可能是非法的,所以被墙可能性也是很高的。(以上纯假设,我没皮包公司)根据国家规定,聊天app需要审查,所以确实很难合法搞一个聊天app
http/2 也能过,只是从 cdn 到服务器是 http/1.1, 那就还是没低延迟优势了
Beta Was this translation helpful? Give feedback.
All reactions