这个年代每个人都会过多过少使用抖音,此产品基本上覆盖全中国的人民 但是今天我以一个技术人的身份讲讲打开抖音APP一瞬间,技术层面到底发生了一些什么,为什么刷抖音视频推荐不会卡顿,为什么刷广告一点都不卡的,为什么点击用户视频进去的时候访问里面视频有时候会慢 明明刚刚一点都不卡的,其实都是有技术套路在里面。本文做为一线搬砖师,就好好测评分析,打开的那瞬间,它做了什么?
apple store下载
点击下载的瞬间 你以为你只是下载,程序N次请求帮你下载,帮你从apple store或者说从准确说的 从apple CDN域名成功下载下来app
打开APP,到底加载什么
对,又是一堆请求 ,心想我不就看个视频为啥你帮我请求这么多的信息呢 大家仔细观察哈一下。
核心是下列几个域名
代码语言:javascript复制ipstatp.com
byteimg.com
snssdk.com
pstatp.com
amemv.com
为什么有这么多,咱也不知道呀,只知道这里面*.ixigua.com这个地址 默默已经把投放给大家的广告的图片和部分视频默默的已经加载完了 默默等着你的召唤了,所以每次你看视频卡的时候,为什么广告的不卡的原因也就暴露出来了。因为app本身已经早早下在本地缓存住了 请求是自己的手机里面的内容
互联网大佬不仅赚你的钱 而且还利用你的手机 眼泪水掉下来
代码语言:javascript复制byteimg.com 图片
amemv.com 视频
snssdk.com 一些重要个人数据上报
发现了一个商业秘密 alogs.umeng. 恭喜umeng喜提字节
代码语言:javascript复制 dig sf16-ttcdn-tos.pstatp.com
解析发现 APP 也有操作动作的呀 大家细看解析iP 细细品味人生,原来真的有可能涉嫌xx的 懂王说的真没有问题!!!
代码语言:javascript复制 [root@iZu3xyx17sgwrsZ ~]# dig sf16-ttcdn-tos.pstatp.com
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6 <<>> sf16-ttcdn-tos.pstatp.com
;; global options: cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64252
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;sf16-ttcdn-tos.pstatp.com. IN A
;; ANSWER SECTION:
sf16-ttcdn-tos.pstatp.com. 600 IN CNAME sf16-ttcdn-tos.pstatp.com.edgesuite.net.
sf16-ttcdn-tos.pstatp.com.edgesuite.net. 2058 IN CNAME a1827.b.akamai.net.
a1827.b.akamai.net. 20 IN A 23.59.247.249
a1827.b.akamai.net. 20 IN A 23.59.247.122
;; Query time: 62 msec
;; SERVER: 100.100.2.136#53(100.100.2.136)
;; WHEN: Tue Oct 20 14:35:20 CST 2020
;; MSG SIZE rcvd: 168
用户界面的访问视频跟推荐域名不一致
用户的访问视频是用(我暂时到两个不知道对不对)
代码语言:javascript复制api3-normal-c-hl.amemv.com.w.cdngslb.com.
api3-core-c-hl.amemv.com.w.cdngslb.com.
cdn 加速访问用 暴露了 阿里云
代码语言:javascript复制[root@hz-monitor ~]# dig api3-normal-c-hl.amemv.com
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6 <<>> api3-normal-c-hl.amemv.com
;; global options: cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49278
;; flags: qr rd ra; QUERY: 1, ANSWER: 11, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;api3-normal-c-hl.amemv.com. IN A
;; ANSWER SECTION:
api3-normal-c-hl.amemv.com. 600 IN CNAME api3-normal-c-hl.amemv.com.w.cdngslb.com.
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 180.163.121.248
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 114.80.24.230
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 101.227.0.137
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 101.226.26.230
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 114.80.24.229
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 114.80.24.232
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 180.163.149.244
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 180.163.122.224
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 180.163.122.229
api3-normal-c-hl.amemv.com.w.cdngslb.com. 60 IN A 101.226.26.232
;; Query time: 29 msec
;; SERVER: 100.100.2.138#53(100.100.2.138)
;; WHEN: Tue Oct 20 15:43:13 CST 2020
;; MSG SIZE rcvd: 266
说了这么多废话 对 我就是对一款视频类的app进行分析了一下请求分析了一下!!
对 以上都是我猜的- -
总结得出
1、视频 和 图片 域名要独立
2、广告 和 业务独立
3、图片用自建的
4、umeng是宇宙条的服务商
5、宇宙条有把数据.......
6、视频热度不同 访问的URL类型也不同
因为公司业务也有类似场景 就想测评一下 最后讲重点了!用户访问具体页面情况是怎么样贡献给即将上路前端工程师!!
浏览器判断是不是ip地址------》不是就进行域名解析------》依次通过浏览器缓存----》系统缓存-----》host文件------》还是没找到的请求DNS服务器获取IP解析(解析失败的浏览器尝试换别的DNS服务器,最终失败的进入错误页面)
有可能获取到CDN服务器IP地址,访问CDN时先看是否缓存了,缓存了响应用户,无法缓存,缓存失效或者无缓存,回源到服务器。
经过防火墙外网网管路由到nginx接入层。nginx缓存中存在的直接返回,不存在的负载到web服务器。web服务器接受到请后处理,路径不存在返回404。存在的返回结果(服务器中也会有redis,ehcache(堆内外缓存),disk等缓存策略)。原路返回,CDN加入缓存响应用户。