码迷,mamicode.com
首页 > Web开发 > 详细

浅谈web请求过程

时间:2018-05-07 10:22:03      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:域名   描述   响应头   网络架构   http请求   数据   静态资源   socket   info   

1,B/S网络架构描述

  B/S网络架构基于统一的应用层协议HTTP来交互数据,HTTP协议采用无状态短链接的通信方式,一次请求完成一次数据交互

采用这种方式可以同时服务更多的用户。

  当用户输入url时,DNS把这个域名解析成对应的ip地址,然后在访问此IP地址对应的服务器,向服务器发送一个get请求,由服务器返回默认的数据资源,数据可以为分布式的,一般静态资源存放在CDN服务器中。

  CDN(content delivery network):它是构筑在现有的internet上的一种先进的流量分配网络,它可以将网站内容发布到最接近用户的网络边缘,使用户就近取得所需内容。CDN=镜像+缓存+整体负载均衡

2,发起请求

  发起一个HTTP请求和建立一个Socket连接区别不大,本质上就是建立Socket连接,java常用的发起Http请求的包:HttpClient

3,HTTP协议解析

  常见请求头,响应头,状态码:

技术分享图片

 

 技术分享图片

4,域名解析

  用户发起请求,首先查找系统缓存中是否有DNS解析的结果,windows的缓存文件路径:C:\Windows\System32\drivers\etc\hosts,Linux:/etc/named.conf,如果没有再访问Local DNS服务器(DNS服务器由网络提供者提供),如果还是未命中就直接到root Server 域名服务器请求解析,根域名服务器返回给本地域名服务器一个所查询域的主域名服务器(gTLD server)

gTLD是国际顶级域名服务器,gTLD返回一个name server域名服务器,再访问这个服务器获得该域名的ip值和TTL值(域名解析缓存的时间由TTL控制)(name server可能有多级,或者一个GTM来负载均衡控制)

技术分享图片

 

  5,CDN架构

  技术分享图片

    公司自己的DNS服务器会把请求重新别名解析到CDN全局中的DNS负载均衡服务器,再由GTM最终分配返回离用户最近的节点。

6,负载均衡

  常见的负载均衡有:链路负载均衡,集群负载均衡,操作系统负载均衡

技术分享图片

(ps:内容来自书《深入分析Java web技术内幕》,归纳备忘)

浅谈web请求过程

标签:域名   描述   响应头   网络架构   http请求   数据   静态资源   socket   info   

原文地址:https://www.cnblogs.com/dybe/p/9000912.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!