点击注册
点击注册
.
.

干货DNS科普

发布日期:2022-04-09 09:53    点击次数:100

干货DNS科普

对于一个 Web 站点或是一个 APP 应用来说,当用户打开你的站点时,最在乎的并不是你提供的内容有多么的吸引人、内容质量有多么高,因为此时用户还没看见你的提供的内容,那么用户最在乎的是什么呢?是你站点加载速度和访问速度。


有研究表明,大多数用户期望的网站加载时间是3秒,如果时间长过3秒,就会始流失57%的用户。如果超过8秒,几乎所有用户会毫不犹豫的离开你的网站,这就是所谓的8秒原则。


随着技术的日新月异,Web2.0的到来大大提高了网站与网民间之间的互动,可以提供直播、视频、图片等等多媒体方式,因此诞生了许多优秀的门户网站与企业网站。但是同时也带来了很多问题,其中最大的问题就是网站访问速度的问题,这个问题直接影响到网站的流量。


众所周知,互联网时代是一个流量为王的时代,谁掌握了流量谁就能赚钱。那么如何解决网站访问慢的问题呢?


要解决网站为什么访问慢,我们得了解,是什么原因会导致网络访问变慢,我总结下主要有以下几点:


链路问题;


不同运营商之间互相访问;


DNS 解析问题;


服务器系统存在瓶颈导致差导致的访问慢;


程序问题的访问慢。


链路问题


举个例子,假设杭州的一个网友小李,他通过手机访问一家图片类的网站,但是这家网站的服务器是在北京,如图所示:


他怎么访问到这台服务器的呢?首先,小李从他的设备打开浏览器访问对应的网站,此时数据就会从网卡将请求发出去,假设小李从客户端连接的是WiFi,就会首先从WiFi对应的路由器将数据转发出去,然后经过运营商的网络,这中间会经过很多个大大小小的路由设备,最终将数据传递到对应的网站服务器,如图所示:


这就好比你从杭州买个高铁票到北京,中间经过很多个站点,比如上海站、山东站等,这一个一个的站点就可以理解为一个一个的路由器。需要注意的是,上图所示的只是客户端将数据发送给服务器的过程,那么服务器收到数据之后就会与客户端建立经典的TCP 握手,也就是收到客户端发送的SYN标志位,然后会回复客户端SYN+ACK,此时数据又从服务器对应的机房出口路由器一层一层的返回给客户端。一来一回,你是不是感觉这个过程很慢,事实上这确实是比较慢。但是网络的传输速度还是比现实中坐高铁快得多的,所以这个过程可能也就需要几秒的时间。


众所周知,2个不同路由器下的设备如果要进行通信,就必须要需要使用 IP 地址,在IPV4协议的报头中有一个字段叫 TTL ,即Time To Live的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。TTL的最大值是255,一般推荐值是64。这个值越大说明经过的路由越多,延迟也就越大。


在IP数据包从源到目的的整个转发路径上,每经过一个路由器,路由器都会修改这个TTL字段值,具体的做法是把TTL的值减1,然后再将IP包转发出去。如果在IP包到达目的IP之前,TTL减少为0,路由器将会丢弃收到的TTL=0的IP包并向IP包的发送者发送 ICMP time exceeded消息。


比如我们要 ping 百度 从下面就可以看到 ttl 等于 54:


# ping www.baidu.com


PING www.a.shifen.com (180.97.33.107) 56(84) bytes of data.


64 bytes from 180.97.33.107 (180.97.33.107): icmp_seq=1 ttl=54 time=12.4 ms


64 bytes from 180.97.33.107 (180.97.33.107): icmp_seq=2 ttl=54 time=12.2 ms


64 bytes from 180.97.33.107 (180.97.33.107): icmp_seq=3 ttl=54 time=12.0 ms


64 bytes from 180.97.33.107 (180.97.33.107): icmp_seq=4 ttl=54 time=11.9 ms


不过,如果客户端在请求时,中间某个路由器设备或网络线路出现故障,那么就无法正常建立连接了。这个时候就会出现丢包,如果丢包率达到100%,就说明这个网站是完全无法访问,我们可以通过 mtr 或traceroute 等命令来确认从客户端到达目标网络中间链路是否丢包是否延迟很大。


其中的Loss% 列如果对应的行出现丢包率 100% 就说明该行对应的IP 地址所在的路由设备出现问题,从而导致无法继续将数据转发出去了。


Keys: Help Display mode Restart statistics Order of fields quit


Packets Pings


Host Loss% Snt Last Avg Best Wrst StDev


1. ???


2. 10.206.48.65 0.0% 360 1.3 1.4 1.0 3.3 0.2


3. 115.238.120.149 0.0% 360 1.4 1.9 1.0 10.7 0.7


4. 115.238.120.101 0.0% 360 1.6 1.7 1.1 11.2 1.0


5. 220.191.200.243 0.0% 360 5.4 6.3 5.0 105.5 7.0


6. 202.97.33.161 36.5% 360 16.2 17.7 12.0 311.6 34.1


7. 202.102.73.150 0.0% 360 15.4 22.6 13.8 220.3 22.7


8. ???


9. 180.97.32.102 100.0% 360 24.7 30.3 14.3 91.1 16.8


10. ???


不同运营商之间互相访问


还有一种情况就是不同运营商的网络之间访问也会导致访问延迟变大,从而导致请求丢包或连接被拒绝。


在国内,不同运营商之间的网络走的线路是不一样的,假设小李是使用的中国移动的网络,而他访问的目标网站是一个中国联通的服务器,由于存在这种问题就会导致请求变得非常慢或直接无法访问。


要解决这个问题就是服务器选择BGP(边界网关协议,Border Gateway Protocol)线路的机房, BGP是互联网上一个核心的去中心化自治路由协议,它可以很好地解决不同运营商之间的访问延迟大等问题。


DNS 解析问题


不同的DNS 服务器解析得到的 IP 结果是不一样的。一般情况下,如果不主动配置,运营商会默认给客户端分配一些运营商自己的 DNS 服务器,这些服务器由于更新缓存慢,也会导致无法访问等情况出现。因此建议客户端配置公共的 DNS 服务器,例如 114.114.114 等DNS地址。


流量为王,程序员如何打破 8 秒原则?| 技术头条


服务器本身性能问题


如果服务器的访问量过大,就会导致系统 CPU、内存、磁盘I/O、网络I/O飙高,也会导致请求被中断,从而无法正常请求无法被处理从而导致报错,例如 HTTP 报 5XX 的错误。


应用本身问题


如果一个网站服务器存在大量的图片则会导致浏览器加载变慢,从而导致访问慢,另外一些html文件或js css文件没有经过压缩也会导致文件变大,从而导致加载时间变长,亦或者程序的某个方法写的有问题导致请求时间过长等等。


我们可以通过例如Chrome等浏览器的开发者模式来确认到底是那些文件加载时间过长,从而针对性的进行优化。



如何优化?


那么怎么优化呢?首先,可以通过配置 Web 服务器的缓存规则来实现对一些静态资源进行缓存,从而达到快速访问的效果。例如 nginx 中通过如下配置,实现将制定的文件进行缓存 30天。


location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$


{


expires 30d;


}


location ~ .*.(js|css)?$


{


expires 30d;


}


当文件被缓存后,请求就不会直接去磁盘获取文件,从而减小 I/O 资源的消耗。


其次,可以配合 CDN 来实现加速,CDN 全称是Content Delivery Network,即内容分发网络。


CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度、缓存等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。使用 CDN 可以大大降低客户端到达服务器的网络延迟。


另外,对系统进行监控,判断瓶颈在哪里并进行必要的升级或水平扩容,从而达到降低系统负载。


此外,服务端如果有多台服务器,也可以针对不同运营商的请求使用 DNS 分发到不同的区域或不同的运营商从而达到降低负载以及解决不同运营商之间访问慢的问题。




Powered by 澳门赌场攻略 @2013-2022 RSS地图 HTML地图

网站统计——

  • 谷歌搜索留痕推广
  • 谷歌搜索留痕排名技术
  • 谷歌快速排名
  • 留痕方法
  • 谷歌搜索快速方法
  • google搜索留痕程序
  • 谷歌快速排名
  • 澳门太阳城
  • 最大博彩公司
  • 谷歌搜索关键词排名
  • 搜索留痕程序
  • 谷歌排名出售
  • 谷歌蜘蛛池排名
  • 搜索留痕软件
  • 缅甸果敢赌场
  • 电子游艺规则
  • 谷歌留痕推广
  • google引流程序
  • 谷歌快速排名
  • google引流程序
  • 留痕推广
  • 大西洋城赌场
  • 买球地址
  • 搜索留痕
  • 搜索留痕程序出售
  • 谷歌蜘蛛池排名技术
  • 留痕程序
  • 如何提高google搜索排名
  • 数字币博彩
  • 洗钱方法
  • Google留痕收录
  • 最新谷歌搜索留痕排名
  • 搜索留痕
  • Google留痕收录
  • google搜索留痕
  • 数字币博彩网站
  • 足球投注平台
  • 博彩推广话术
  • 推广引流方法
  • 引流方法
  • 博彩推广话术
  • 网上博彩推广引流
  • 数字币赌场
  • 皇冠现金网
  • 蜘蛛池排名
  • 谷歌蜘蛛池
  • 留痕程序出售
  • google搜索留痕程序
  • 比特币网上赌场
  • 洗钱平台
  • 搜索留痕
  • 博彩推广方式
  • 网上博彩推广
  • 快速排名
  • 搜索留痕程序
  • bbin平台大全
  • 体育博彩公司排名
  • 留痕排名技术
  • 最新谷歌关键词排名
  • 推广渠道
  • 谷歌快速排名
  • 博彩推广
  • 世界杯赌球地址
  • 皇冠博彩公司
  • 谷歌排名出售
  • 博彩引流渠道
  • 搜索留痕程序
  • google搜索留痕
  • 引流渠道
  • 果敢网上赌场
  • 世界杯赌球
  • 搜索留痕方法
  • 博彩搜索留痕
  • 博彩引流
  • 博彩引流
  • 搜索留痕
  • 缅甸网上赌场
  • 欧洲杯赌球
  • 谷歌搜索排名
  • 留痕程序
  • 网上博彩推广引流
  • 留痕技术
  • 搜索留痕技术出售
  • 澳门威尼斯人网上赌场
  • 外围博彩
  • 博彩网站推广
  • 推广引流
  • 留痕程序出售
  • 谷歌推广引流技术
  • 推广引流方法
  • 美国在线赌场
  • 沙巴体育投注平台
  • 最新谷歌搜索留痕
  • 谷歌蜘蛛池排名技术
  • 网站推广方法
  • 留痕程序出售
  • 博彩推广方法
  • 菠菜论坛
  • 买球平台
  • 谷歌搜索留痕
  • 蜘蛛池排名
  • 博彩公司推广渠道
  • 谷歌搜索留痕
  • 博彩公司推广渠道
  • 真钱游戏
  • 网上赌球地址
  • 赌球平台推荐
  • 赌球网址
  • 博彩包网
  • 买球app
  • 澳门博彩公司
  • 威尼斯人赌场
  • 博彩平台推荐
  • 美国博彩网站
  • 缅甸实体赌场
  • 柬埔寨网上赌场
  • 柬埔寨在线赌场
  • 韩国博彩
  • 支持人民币的博彩公司
  • 世界五大比特币交易所
  • 欧易是哪个国家的
  • 中币跑路
  • 亚洲博彩公司
  • 合法网上赌场
  • 马尼拉赌场
  • 支持人民币的博彩公司
  • 大陆博彩平台
  • 澳门新葡京娱乐城
  • 老挝赌场
  • 世界赌场排名
  • 网上博彩公司排行
  • 菠菜论坛
  • 东南亚赌博网站
  • 虚拟币博彩
  • 澳门百家乐网址
  • 网上博彩导航
  • 区块链百家乐游戏
  • 马来西亚博彩公司
  • 越南赌场
  • 区块链百家乐
  • 香港娱乐场
  • 澳大利亚赌博网站
  • 足球赔率
  • 菲律宾网上赌场
  • 数字币博彩网站
  • 足球投注网站
  • 百家乐论坛
  • 皇冠体育博彩公司
  • 网上赌博网站
  • 网上博彩推广话术
  • 谷歌搜索快速方法
  • 网上博彩推广话术
  • 数字币赌场
  • 皇冠博彩公司
  • 世界杯博彩公司
  • 英国博彩公司
  • 网上博彩合法化
  • 新加坡赌场
  • 比特币网上赌场
  • 怎么洗钱
  • 加密货币博彩平台
  • 世界杯赌球网址
  • 网上赌球地址
  • 博彩推广方式
  • 印度尼西亚博彩公司
  • 国际包网
  • bbin平台直营
  • 亚洲体育博彩平台
  • 越南博彩公司
  • 百家乐路单
  • 澳门博彩官网
  • 博彩网推荐
  • 澳门太阳城网址
  • 百家乐网址
  • 世界杯赌球网址
  • 皇冠博彩网址
  • 洗钱方法
  • 买球网站
  • 欧洲杯赌球平台
  • 皇冠现金网
  • 外围赌球平台
  • 果敢赌场
  • 买球技巧
  • 全球最大博彩公司
  • 电子游艺
  • 真人电子游戏
  • 骰宝游戏规则
  • 亚洲体育博彩平台
  • 澳门在线赌场
  • 缅甸赌场地址
  • 赌球平台
  • 赌场如何赢钱
  • 世界杯买球网站
  • 真人牌九游戏
  • 世界杯买球官网
  • 时时彩平台
  • 六合彩预测
  • 威尼斯人网上赌场
  • 外围赌球网站
  • 赌博网址
  • 彩票群
  • 微信赌博群
  • 韩国首尔赌场
  • 赌钱游戏
  • 美国网上赌场
  • bbin官网
  • 沙巴体育官网
  • 博彩平台推荐
  • 数字币博彩网站
  • 比特币网上赌场
  • 世界赌场名单
  • 美国赌场攻略
  • 菠菜论坛排名
  • 菠菜论坛排名
  • 缅甸网上赌场
  • 支持人民币的博彩公司