架构(day09)

网友投稿 268 2022-10-31


架构(day09)

Web基础入门-Page)。这些链接使用URL表示。最常见的超文本格式是超文本标记语言HTML。

html文件->包含各种各样的元素(URL链接)->形成WebPage简称web页面

什么是URL

class.driverzeng.com:80 /15648000575258.html 协议 主机(域名):端口 站点目录下的文件名 URL:统一资源定位符(唯一) URL组成:协议、主机(域名)和端口、文件名 URI:/15648000575258.html

超文本传输协议工作原理

# 当我们在浏览器中输入:1.浏览器请求DNS服务器 - 本地DNS(local DNS)优先级高 如果本地DNS中有class.driverzeng.com的域名解析则将IP地址返回给浏览器 - DNS服务器 找13个根域: .com .cn .org .edu .xyz .net .gov ... 递归查询 .driverzeng.com class.driverzeng.com --> A记录:39.104.203.184 迭代查询 服务器查找 2.DNS将域名解析成IP地址(39.104.203.184)返回给浏览器 3.浏览器与该IP地址的80端口(nginx)建立TCP/IP连接 - 三次握手 4.发送GET请求下载/15648000575258.html到浏览器中 /var/5.服务端将 /var/返回给浏览器 6.断开TCP/IP连接 - 四次挥手 7.浏览器展示web页面(超文本传输协议,将html页面下载到浏览器中) 例如: 浏览器:单身狗 DNS:婚介所中介 URL:姑娘照片 IP地址:手机号 TCP/IP建立连接:打电话(三次握手) 断开TCP/IP连接:挂电话(四次挥手)

静态请求 动态请求 静态页面 动态页面 s?ie=utf8 &f=8 &rsv_bp=1 &tn=baidu &wd=%E6%9B%BE%E5%BF%97%E9%AB%98%E7%BF%94 &oq=%25E6%259B%25BE%25E8%2580%2581%25E6%25B9%25BF &rsv_pq=f865f8990001586e &rsv_t=ab36Jk%2Ba1Jpw9wdHyY0ARobg0ghcOw9FYXOWMNGAhYXuzSg1irXvqbY7DwY &rqlang=cn &rsv_enter=1 &rsv_dl=tb &rsv_btype=t &inputT=8396 &rsv_sug3=54 &rsv_sug1=42 &rsv_sug7=100 &rsv_sug2=0 &rsv_sug4=8396

分析浏览器中的请求响应信息

## General # 1.请求的URL Request URL: # 2.请求方法:GET Request Method: GET # 3.状态码 Status Code: 200 OK 2xx 3xx 4xx 5xx # 4.远端地址 Remote Address: 10.0.0.8:80 # 5.referrer规则 Referrer Policy: no-referrer-when-downgrade referrer:从哪里跳转到网站 ## 响应头部信息 # 1.响应信息的单位,bytes Accept-Ranges: bytes # 2.连接方式:长链接 Connection: Keep-Alive # 3.响应的主体的长度:2633 Content-Length: 2633 # 4.响应主体的类型 Content-Type: text/html; charset=UTF-8 # 5.日期 Date: Thu, 26 May 2022 03:29:36 GMT # 6.标签 ETag: "a49-56b5ce607fe00" # 7.长链接的超时时间和最大连接数 Keep-Alive: timeout=5, max=100 # 8.上一次修改时间 Last-Modified: Fri, 04 May 2018 08:13:44 GMT # 9.服务端信息 Server: Apache/2.4.6 (CentOS) PHP/5.4.16 ## 请求头部信息 # 1.允许请求的主体类型 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,appli cation/signed-exchange;v=b3 # 2.压缩 Accept-Encoding: gzip, deflate # 3.允许的语言 Accept-Language: zh,en-US;q=0.9,en;q=0.8,zh-TW;q=0.7,zh-CN;q=0.6 # 4.缓存,没有开启缓存 Cache-Control: no-cache # 5.连接方式:长链接 Connection: keep-alive # 6.请求的服务端IP Host: 10.0.0.8 # 7.没有缓存 Pragma: no-cache # 8.浏览器向服务端发送的成功信号 Upgrade-Insecure-Requests: 1 # 9.客户端信息 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36

HTTP请求方法

## 常见请求方法 GET:读取一个页面 POST:明文提交数据,读取页面 DELETE:调用后端接口删除功能的页面 PUT:调用后端,存储、上传功能页面 ## 了解即可 CONNECT:代理服务器 HEAD:读取web页面的头部信息 TRACE:测试服务器请求 OPTION:查询特定选项

HTTP状态码

200:页面访问成功 301:永久重定向 302:临时重定向 304:浏览器缓存 307:内部重定向 400:客户端错误 Bad request 401:认证失败 403:权限不足 404:找不到页面 500:服务器内部错误(代码问题,服务器的问题) 502:Bad Gateway,后端服务报错(哪台服务器上的日志出现502,就检查该服务器后端的服务) 503:服务器过载,访问评率过快 504:后端服务超时

HTTP及架构请求访问流程

# 在浏览器中输入1.浏览器向local DNS发起域名解析请求,本地DNS(/etc/hosts)文件中没有 2.浏览器向DNS根域服务器发起请求,解析域名blog.driverzeng.com 3.DNS进行递归查询和迭代查询: 客户端向服务端发起查询 - > 递归查询 服务端向服务端发起查询 - > 迭代查询 .com根域服务器发起查询 .com根域服务器 -> .driverzeng.com .driverzeng.com -> blog.driverzeng.com A记录 39.104.203.184 将 A记录:39.104.203.184返回给浏览器 4.浏览器和39.104.203.184所在服务器的80端口建立TCP/IP连接 防火墙的规则不允许你的IP地址访问该服务器的80端口,则拒绝连接,报错返回给用户 防火墙的规则允许你的IP地址访问该服务器的80端口,则放行 - 建立连接(TCP/IP 三次握手) syn(建立连接信号) 客户端 ---------------------> 服务端 syn+ack(我收到建立连接的请求了) 服务端 ---------------------> 客户端 ack(告诉服务端,我知道你收到建立连接的请求了) 客户端 ---------------------> 服务端 5.向服务端的web服务发起 - 请求头部信息 1)请求的方法是什么: GET获取 2)请求的Host主机是: blog.driverzeng.com 3)请求的资源是什么: /index.html 4)请求的端端口是什么: 默认 5)请求携带的参数是什么: 属性(请求类型、压缩、认证、浏览器信息、等等) 6)请求最后的空行 6.将请求根据调度算法(rr 轮询)将请求下发给后端的web服务器 7.读取web服务器上的nginx配置文件,找到站点目录 8.找到对应的代码文件 - 静态请求:web服务器将静态求情下发到共享存储服务器上,找到对应的静态资源返回给用户 - 动态请求: 1)将请求发送给后端代码,处理 2)先找数据库的缓存(Redis,memcache) 3)如果缓存中有数据,则直接将数据返回给用户 4)如果缓存没有数据,则找后端数据库 5)从数据库中取出数据后,先存入缓存一份,然后在返回给用户 9.返回对应的状态码和响应头部信息给浏览器 10.断开TCP/IP连接 - 四次挥手 11.浏览器展示网站页面

简单理解CDN

CDN:分布式静态缓存服务器 静态zi  yuan:html,css,js,mp3,mp4,avi,jpg.png...

1.提升了网站访问速度

2.减少后端服务器的压力

HTTP相关术语

SOA松耦合架构

开发网站为了解耦,做出SOA架构

#一个电商公司,他的网站页面功能会有很多 注册 登录 首页 详情页 购物车 价格标签 留言 客服 支付中心 物流 仓储信息 订单相信 图片


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:接口在线测试(接口测试)
下一篇:mock(mocking是什么意思)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~