本文主要介绍如何实现高质量刷抖音,主要在两个方面入手——网络提速以及网络稳定。需要了解各种提速方法和故障产生前后的措施,从而实现良好的用户体验。
网络提速
HTTP2.0提速:多图并发下载——多路复用
QUIC/HTTP3.0提速:UDP、Userspace、0 RTT、弱网优势——解决阻塞问题
数据中心提速
-
数据中心概念:服务器集合的部署(核心机房、POP接入/汇聚机房、边缘机房)
-
优化方法:同运营商访问
路径优化
-
CDN:对于静态资源(图片视频),在边缘机房做一些缓存
-
DSA:对于动态API(播放/评论),探测找到最优路径
CDN(Content Delivery Network,内容分发网络)利用了多地部署缓存节点,再有中心智能调度、分发这一手法来降低网络延迟,提高网站访问速度。
简单来讲,CDN就是用来静态分发加速的,但跟我们的加速器不同,它是端对端的一个加速。主要目的在加快用户访问速度,减轻宽带压力。
当用户请求一个文件时,CDN的工作过程如下:
1.DNS请求当地local DNS
2.当地local DNS递归地查询服务器的gslb
3.服务器根据local DNS 分配最佳节点,返回IP
4.用户获得最佳接入IP,访问最佳节点。
5.如果该节点没有用户想要获取的内容,则通过内部路由访问上一节点,直到找到文件或到达源站为止。
6.CDN节点缓存该数据,下次请求该文件可以直接返回。
动态网站加速(DSA)是一组使动态网站交付更加高效的技术。应用程序交付控制器和内容交付网络(CDN)的制造商使用多种技术来加速动态站点。
基本技术包括:
-
通过多路复用客户端连接和HTTP保持活动状态,改进了连接管理
-
无法抓取的网络响应的预取
-
动态缓存控制
-
即时压缩
-
全页缓存
-
卸载SSL终止
-
基于响应的TTL分配
-
TCP优化
-
路线优化
网络稳定
容灾概念:
-
故障发生
-
故障感知(系统而非人员得知,反馈监控、客服上报)
-
自动切换(去除故障处)
-
服务恢复
故障排查:
-
故障明确:业务、接口、体现、访问其他目标正常否、由修改导致否
-
故障止损:先止损后排查(用户体验第一,影响为秒级);容灾与降级
-
分段排查:客户端、服务端、中间链路排查
常用指令:
-
dig——DNS问题
-
ping/telnet/nmap——三层/四层连通性
-
traceroute——中间链路
-
iptabels——客户端(防火墙)
-
tcpdump——抓包并对比
故障预防:
-
监控报警
-
演练/预案
-
降级/止损
个人感想:实现高质量刷抖音主要在两个方面——网络提速以及网络稳定。通过了解各种提速方法和故障产生前后的措施,学习了很多关于网络的基础操作。