B/S网络架构概述(在浏览器中输入一个URL会发生什么)
文/七日长歌
微博:七日长歌
B/S网络架构概述
B/S网络架构从前端到后端都得到了简化,都基于统一的应用层协议HTTP来交互数据,与大多数传统C/S互联网应用程序采用的长连接的交互模式不同,HTTP采用无状态的短连接的通信方式。通常情况下,一次请求就完成了一次数据交互,通常也对应一个业务逻辑,然后这次通信连接就断开了。采用这种方式是为了能够同时服务更多的用户,因为当前互联网应用每天都会处理上亿的用户请求,不可能每个用户访问一次后就一直保持这个连接。
在浏览器中输入一个URL会发生什么
当一个用户在浏览器里输入www.taobao.com这个URL时,将会放生很多操作。
- 首先它会请求DNS这个域名解析成对应的IP地址。
- 根据这个IP地址在互联网上找到对应的服务器,向这个服务器发起一个get请求,由这个服务器决定返回默认的数据资源给访问的用户。
- 服务器可能有很多台,到底指定那台服务器来处理请求,这需要一个负载均衡设备来平均分配所有用户的请求;还有请求的数据时存储在分布式缓存里还是一个静态文件中,或是在数据库里。
- 当数据返回浏览器时,浏览器解析数据发现还有一些静态资源(如CSS、JS或者图片)时又会发起另外的HTTP请求。
- 而这些请求很可能会在CDN上,那么CDN服务器又会处理这个用户的请求。
需要遵守的原则
- 互联网上所有资源都要用一个URL来表示,URL就是统一资源定位符。
如果你要发布一个服务或者一个资源到互联网上,让别人能够访问到,那么你首先必须要有一个在世界上独一无二的URL。 - 必须基于HTTP与服务端交互。不管你要访问的是国内的还是国外的数据,是文本数据还是流媒体,都必须有按照套路出牌,也就是都得采用统一打招呼的方式,这样人家才会明白你要的是什么。
- 数据展示必须在浏览器中进行。当你获取到数据资源后,必须在浏览器上才能恢复它的容貌。
只要满足上面的几点,一个互联网应用基本上就能正确地运转起来了。
#Java#