B/S网络架构浅析

B/S网络架构

 

目前大部分的项目都采用了B/S网络架构,那么接下来我们就了解一下B/S网络架构的知识。

 

一、B/S网络架构的有点:

a)        客户端使用统一的浏览器(Browser);

b)        服务器(Server)使用统一的HTTP。

二、B/S架构简述:

a)        B/S网络架构,前端和后端都采用统一的HTTP应用协议来交互数据;

b)        HTTP采用无状态的短链接通信方式(即一次请求完成一次数据交互,然后这次通信就断了,而传统的C/S应用,多采用长链接的交互模式),这种短链接的有点是:可以同时服务更多的客户。

三、B/S网络架构设计及请求步骤:

a)        目前的B/S架构多采用图一的架构



a)        用户在浏览器输入url,然后回车,发生以下请求步骤:

  i.  首先,请求DNS服务器,将域名解析成IP地址;

  ii. 浏览器根据这个IP地址在互联网上找到对应的服务器;

1.        服务器端大致有以下两种操作:

a)        服务器端有一个均衡负载设备来平均分配用户请求

b)        请求的数据可能存放在三个地方:

 i.    分布式缓存里;

 ii.    静态文件中;

 iii.   数据库中。

 iii.   服务器数据返回到浏览器,解析展示;(如果发现还有一些静态资源,如css,js,img等,这些静态资源一般存放在CDN服务器中,因此浏览器继续发起新的http请求,到DNS服务器上请求需要的静态资源)

二、B/S架构需遵守的原则

a)        互联网上所有的资源都需要用一个URL来表示;

b)        与服务器交互必须基于HTTP协议;

c)        数据展示必须在浏览器中进行。


http请求概述

 

一、发起一个http请求建立一个socket连接相似,不同的是outputStream.write()中写入的二进制字节数格式要符合http规则。

二、一个http请求的具体步骤:

a)        用户在浏览器输入一个域名,回车,先到DNS服务器将这个域名解析为对应的IP;

b)        然后这个IP+默认80端口,与远程服务器建立连接;

c)        组装一个get类型的http请求头;

d)        通过outputStram.write()发送到目标服务器;

e)        浏览器等待inputStream.read()读取到数据;

f)         断开连接。

总结:发起一个http请求的过程就是一个简历socket的过程。


http解析

1、  B/S架构中的核心是http ,http解析中最重要的是http Header ;

2、  http header控制着用户数据的传输、浏览器的渲染和服务器的逻辑执行;

 

工具

在浏览器中查看http请求信息的工具

1、  firefox火狐,有两个查看工具

a)        firebug

b)        Httpfox(信息更全)

2、  Chrom浏览器(F12查看)

3、  IE浏览器(F12查看)

 

缓存机制

1、  缓存有两种情况;

a)        浏览器端缓存

b)        服务器端缓存(服务器前段部署一个缓存服务器[Varnish代理])

2、  解决缓存

a)        在浏览器端,使用Ctrl+F5组合键刷新页面,这个操作会告诉页面,此次请求需要最新的页面,不要给我缓存数据(在http的请求头中会增加两个参数Pragma和Cache-Control)

b)        Pragma和Cache-Control这两个请求头用于指定所有的请求机制在整个请求/响应中的必须服从的指令;这两个参数可选值如图:







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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值