1
opengps 2020-09-19 17:16:13 +08:00 via Android
实际并不是一个 /台 /区服务器,而是跨地域的多 set
|
2
abcbuzhiming OP @opengps 多 set 是指的什么意思?
|
3
imn1 2020-09-19 17:31:31 +08:00
那些服务器的技术我不懂,我只知道
先发送,后保存 先保存,后发送 两者区别很大 |
4
cloverstd 2020-09-19 17:46:50 +08:00
不同的用户可以存在不同的机房,比如大陆的用户,存在大陆机房,海外的在海外的机房
用户打上机房的标签,同机房的用户给同机房的发消息,可以不跨机房 如果发送时,发现是其他机房的用户,就路由到对应的机房去,延迟的话,跨机房走专线,基本就是物理上的延迟了 上面是我猜的 |
5
Stain5 2020-09-19 17:55:47 +08:00
参考下电信运营商怎么做的 能够解决你很多问题
|
6
laminux29 2020-09-19 17:56:52 +08:00
题主觉得跨大陆信息传输的延迟很高吗?想想 PUBG ?
|
7
TimePPT 2020-09-19 18:29:21 +08:00 via Android
异地多活同步啊,大厂都这么玩
|
8
wysnylc 2020-09-19 18:30:39 +08:00
你可以从 DNS 分地区负载开始看起
|
10
whileFalse 2020-09-19 19:14:19 +08:00 via iPhone
我记得有个文章说过,他们分杭州服和北美服。用户注册是哪个服就不会变了。
|
11
locoz 2020-09-19 19:14:20 +08:00 via Android
微信的技术人员有写过他们的技术实现,你可以搜一下,我记得是类似于 #4 说的那种
|
12
yangbonis 2020-09-19 19:17:09 +08:00 via iPhone
统一不统一没有你想象的差异那么大,都是在不同层面做相同的事情罢了。
|
13
kerro1990 2020-09-19 19:25:54 +08:00
首先反代服务器 IP 估计是广播的方式,然后调度到附近的数据中心,不同数据中心用专线跨机房数据同步,消息发送看怎么路由的了,微信 ID 肯定包含了路由信息,只不过是加密的
|
14
chinvo 2020-09-19 19:35:52 +08:00 3
|
15
flynaj 2020-09-19 19:48:15 +08:00 via Android
微信都是你发送到服务器,然后服务器又转发出去,所以有些东西你是发不出去的。
|
16
Jerami 2020-09-19 20:24:28 +08:00 via Android
运营商-微信 pop-腾讯骨干网-数据中心
运营商 A-微信 pop-腾讯骨干网-微信 pop-运营商 B |
17
Jerami 2020-09-19 20:24:59 +08:00 via Android
所以说美国禁止与微信的对等互联了嘛
|
18
gaius 2020-09-20 02:24:50 +08:00 via Android
统一用户服务,分布式数据裤呗🐶
|
19
opengps 2020-09-20 08:42:39 +08:00
@abcbuzhiming 刚刚留意到漏掉了你的问题,搜一下“SET 化”,也可以了解下“异地多活”类的信息
再给你举一个例子(数据为印象中的大概值):天津港当年事故期间,腾讯天津机房距离爆炸中心不足 5 公里,其负载了 2-3 亿,随时面临断电风险,因此腾讯紧急切换了负载,对外表现为用户无感知 |
20
opengps 2020-09-20 08:48:46 +08:00
@gaius IM 应用相对而言,更重要的是消息转发,而非数据库存储。
IM 应用最大的资源是骨干贷款,多个机房之间使用骨干网络线路转发。用户到就近 IDC 最然是普通家庭级网络线路,但是 IDC 与 IDC 之前最起码是企业级骨干网络线路。(这同样也解释了“游戏加速器”的原理:就近找个接入点,剩余路线走企业级骨干线路) PS:网络结构上的近,只是约等于地理位置上的近,比如北上广之间必然有高带宽多线路,但是往西部来看,网络延迟就表现出来了 |
21
lc7029 2020-09-20 13:50:53 +08:00
异地多活,BGP Anycast,机房内负载均衡
|
22
ZeawinL 2020-11-11 14:41:29 +08:00
感觉不是统一数据库 我电脑上保存的自定义表情 在手机上都看不到 只能在手机上再添加一次
|