请教多域名请求问题

2024-10-25 14:06:29 +08:00
 cdring
各位大神,后台 api 配置了多个域名。前端如何检测这些域名,哪个延迟低拿哪个域名请求后端 api 。这多个域名是存数据库后端返回给前端。还是直接写到 json 文件,前端请求 https://xx.com/domain.json 获取。哪个方案比较好,有没有其他更好的方案,谢谢。
4127 次点击
所在节点    程序员
44 条回复
proxytoworld
2024-10-25 14:09:29 +08:00
为什么不是后端监测哪个延迟低就用那个, 你这样配多个域名,还得多域名解析,检测
InDom
2024-10-25 14:12:40 +08:00
不要一直切换,发现失败或延迟高的时候再切换。

不经常换就 json ,存数据库静态回到文件,或者重写 json url 到程序也一样,这里根本不是问题。
lcy630409
2024-10-25 14:18:22 +08:00
第一次的时候测试+设置里 手动切换
cdring
2024-10-25 14:24:37 +08:00
@proxytoworld 设计到海外用户,每个 api 域名套了不同厂商的 cdn 加速,所以每个国家的访问 api 域名延迟都不一样。直接前端请求域名延迟比较好吧。
cdring
2024-10-25 14:25:05 +08:00
@lcy630409 太麻烦了,还是自动方便些
cdring
2024-10-25 14:26:42 +08:00
@InDom 打开前端页面就检测哪个域名延迟低,然后就拿这个延迟低的域名请求后端。这样不好吗
DesnLee
2024-10-25 14:27:49 +08:00
每次请求都同时全部请求,拿第一个返回的结果,其他丢弃
webszy
2024-10-25 14:34:10 +08:00
@DesnLee 厉害,有道理
cdring
2024-10-25 14:34:23 +08:00
@DesnLee 万一第一个返回的域名延迟高呢。导致访问很慢
spritecn
2024-10-25 14:40:14 +08:00
这个事前公司做过,通过自研壳浏览器做到的
wangyongbo
2024-10-25 14:40:20 +08:00
@cdring DNS 可以根据 用户的 IP 所属的地域 , 把域名解析到不同的 IP. 这个功能满足不了你们的需要吗?
jenson47
2024-10-25 14:46:57 +08:00
看具体需求,按道理 cdn 在某个地方应该是比较稳定的,或者说我们就认为心跳的响应时间在多少之内是 ok 的。
第一次或者当超过响应时间,就触发一次选择 api ,前端并发的去请求,就用第一个回来的,其他都废弃,或者保留前三,轮着来?
lasuar
2024-10-25 14:50:39 +08:00
你后来 多数据库的一致性问题呢
liuliancao
2024-10-25 14:59:06 +08:00
这个原始需求是希望用户使用最快的 cdn 链接吗 这个肯定在前端做好点 不过最好是自己搞一个域名 做一下区域 dns 不要写进代码里面 这个是可以测试的 不同区域哪个 cdn 好
8355
2024-10-25 15:02:06 +08:00
这个 cdn 和云厂商都有相关的业务吧
比如说阿里云叫全球加速
yplam
2024-10-25 15:10:09 +08:00
如果这个 JSON 请求同时用作测速的话用静态文件好点,不然你后端还要保证在不同 QPS 下响应速度一致
cdring
2024-10-25 15:10:39 +08:00
@spritecn 自研壳浏览器,你们公司厉害
cdring
2024-10-25 15:12:29 +08:00
@jenson47 这也是一种办法
cdring
2024-10-25 15:12:47 +08:00
@lasuar 不设计到多数据库
cdring
2024-10-25 15:13:15 +08:00
@8355 是的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1083569

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX