网络数据请求流程浅析

前言
在我们点开App后,她为我们呈现出丰富多彩的页面,当我们进行各种操作时她都会为我们反馈出我们想要的结果,这时我们不禁会想,她是怎么做到的?其中的流程是什么?

正文
这里我们浅析一下数据请求的流程
首先我们应该知道的是:构成互联网Internet的最基本的网络协议是互联网协议InternetProtocol,简称为IP协议。在IP协议中有一个很重要的东西需要我们了解,那就是IP地址,就像我们每个人的身份证号一样,可以唯一识别我们。

我们拿某款购物软件来举例,当我们用手机打开购物软件App时,App就会为我们加载出网页,如果我们输入要搜索的内容就会为我们呈现所搜结果。这些结果都是App通过向它们自己的数据中心发送请求后反馈得到的,当然只有知道了数据中心负责请求接入的服务器的IP地址,我们的App才能跟它建立连接并发送请求。

如何获取服务器的IP地址呢??

一、通过在App中将服务器的IP地址写死(不过这样可能会被公司祭天),开玩笑开玩笑,这样写虽然可以,不过有失水准,还影响了代码的灵活性。
在这里插入图片描述
二、通过DNS域名解析获取服务器的IP地址,然后利用DNS返回的IP地址去访问目标服务器。
在这里插入图片描述
不过由于用户申请资源的种类不同(静态资源、动态资源),我们将DNS返回的地址分为两种,一种就是目标服务器的IP地址,而另一种是CDN服务器的IP地址。

什么是CDN?
简略的说一下,CDN是内容分发网络Content Delivery Network的缩写,我们的设备之所以可以联网是因为运营服务商为我们提供了互联网接入服务,将我们的设备连接到互联网上。在我们使用App时,App请求的数据最先到达的是运营服务商的接入机房,然后运营商再通过自己建设的骨干网络和交换节点将我们请求数据的地址发到互联网中任何地方,而App的开发者为了让用户们能够有更好的用户体验,也为了能够减低自己软件数据中心的负载压力(毕竟软件火起来了用户会骤增),他们一般都会在全国各地各个主要的运营商的接入机房中部署上自己的缓存服务器,缓存一些静态图片和文件等,而这些缓存服务器就构成了刚才我们所说的CDN
在这里插入图片描述
CDN官方描述:https://baike.baidu.com/item/CDN/420951?fr=aladdin

静态资源访问:
如果用户请求的数据是一些静态数据,此时DNS服务器就会将域名解析为他们软件CDN的IP地址,当CDN接到请求后首先会搜索CDN中是否已经有了用户所需要的静态文件,如果有那么直接返回,如果没有则CDN会将请求发送到该软件的数据中心,CDN从数据中心获取到所需数据后,一方面会将该数据缓存到自己的服务器上,另一方面会将该数据返回给用户。
在这里插入图片描述
动态资源访问:
如果用户请求的是动态资源,比如根据关键字搜索商品,这时DNS会将对应的域名直接解析成该软件数据中心的服务器IP地址。
在这里插入图片描述
这就是一个简单的数据请求过程,这里还涉及到了http协议,会在之后的博文中进行描述。本人初次接触,如果读者看到有不正确或者有想更深入了解的地方可以在下方评论指出,我们一起进步!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值