http协议

浏览器输入www.google.com后都发生了什么?

一句话简单来说,用户敲入网址然后回车,浏览器程序发送一个Http的Get请求,获取google的首页。

稍微展开点

这里的每个步骤都可以在展开来说,下面一个个分析

DNS解析,浏览器获取域名对应的ip地址

也就是上面说的第一个步骤“浏览器获取域名对应的ip地址”,这DNS是有很多的缓存的,而且绝大部分的域名解析请求都是通过缓存来完成的,而且更新这DNS的缓存还是相对比较慢的,所以很多大网站并不会主要依赖这DNS做故障的转移,太慢,但是大网站一般也会有多个DNS,主要目的并不是故障转移,而是在负载均衡。

慢也不是说DNS的服务商太菜,而是因为有缓存的存在,而且慢也是一个相对的1分钟对于很多电商来说也是慢的。

http://www.jianshu.com/p/58503b818619

与server端建立tcp长连接

生成http协议

通过tcp长连接发送http协议到服务器

tcp消息路由

发现不能直达,直接发送给网关?

数据中心接收到协议并路由

httpServer处理请求,返回响应

浏览器接收到完整的协议,浏览器断开tcp长连接

浏览器解析http协议并按照样式进行展示

cookie与session区别与限制 ### 这问题,乍看起来很简单,session存在服务器端,cookie存在客户端。但是这只是一个简单维度,下面详细分析下。

首先这两个东西存在的原因是因为http是个无状态的协议,http只管一次请求一次应答,下一次请求与上一次请求对于http协议来说就没什么关系了。而且服务器中存放session,也是需要有个sessionid进行传递过去的,一般这个session也是用cookie的方式传送给服务器的,使用cookie的方式相对安全。

Table of Contents