【运维知识进阶篇】集群架构-HTTP协议详解

这篇具有很好参考价值的文章主要介绍了【运维知识进阶篇】集群架构-HTTP协议详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本篇文章给大家介绍HTTP协议相关内容,包括HTTP协议简介,HTTP协议工作原理,请求报文,HTTP请求方法,HTTP响应方法,用户访问集群架构流程,HTTP相关术语。

HTTP协议简介

HTTP是hyper text transfer protocol 的缩写

1、超文本

hyper text是超文本的意思,是包含超链接和各种多媒体元素标记的文本,这些超文本文件彼此链接,形成网状,因此又被称为网页,这些链接使用URL表示,最常见的超文本格式是超文本标记语言HTML。

2、URL

URL是统一资源定位符,用来唯一地标识万维网中的某一个文档。URL由协议、主机和端口(默认80)以及文件名三部分构成。

URL:协议+主机:端口+文件名及其路径

3、HTTP

HTTP协议是超文本传输协议,是将超文本文档从一台主机(Web服务器)传输到另一台主机(浏览器)的应用层协议,以实现超链接的功能。

HTTP工作原理

HTTP工作原理:请求/响应交互模型

用户在点击URL后,浏览器和Web服务器执行以下的动作:

1、浏览器分析超链接的URL

2、浏览器向DNS请求解析URL的IP地址

3、DNS将解析出来的IP地址返回给浏览器

4、浏览器与服务器建立TCP链接(80端口)

5、浏览器请求文档(请求方法、请求路径)

6、服务器给出响应,将请求路径的文档返回给浏览器

7、释放TCP链接

8、浏览器显示请求文档的内容

请求报文

请求报文由请求行、请求头部、空行、请求数据,四个部分组成。

HTTP请求方法

常见的请求报文中的方法

方法 含义 方法 含义
GET 请求读取一个Web页面 HTAD 请求读取一个Web页面的首部
POST 提交要被处理的数据 PUT 请求存储一个Web页面
DELETE 删除Web页面 TRACE 用于测试,要求服务器送回收到的请求
CONNECT 用于代理服务器 OPTION 查询特定选项

HTTP响应

状态码是响应报文状态行中包含的一个3位数字,指明特定的请求是否被满足,如果没有满足,原因是什么,状态码分为以下五类

状态码 含义 例子
1xx 通知信息 100=服务器正在处理客户请求
2xx 成功 200=请求成功
3xx 重定向 301=永久重定向,302=临时重定向,304=缓存
4xx 客户错误 403=没有权限,404=没有目录
5xx 服务器错误 500=服务器内部错误,503=以后再试

HTTP头部

类型 说明
User-Agent 请求 关于浏览器和它平台的信息
Accept 请求 客户能处理的页面的类型,如text/html
Accept-Charset 请求 客户可以接受的字符集,如Unicode-1-1
Accept-Encoding 请求 客户能处理的页面编码方法,如gzip
Accept-Language 请求 客户能处理的自然语言,如en英语,zh-cn简体中文
Host 请求 服务器的DNS名称,从URL中提取出来,必需
Referer 请求 用户从该URL代表的页面触发访问当前请求的页面
Cookie 请求 将以前设置的Cookie送回服务器,可用来作为会话信息
Date 双向 消息被发送(接收)的日期和时间
Server 响应 关于服务器的信息,如Microsoft-IIS/6.0
Content-Encoding 响应 内容是如何被编码(gzip)
Content-Language 响应 页面所使用的自然语言
Content-Length 响应 以字节计算的页面长度
Content-Type 响应 页面的MIME类型
Last-Modified 响应 页面最后被修改的时间和日期,在页面缓存机制中意义重大
Location 响应 指示客户将请求发送给别处,即重定向到另一URL
Set-Cookie 响应 服务器希望客户保存一个Cookie

用户访问网站集群架构流程

1.客户端发起http请求,请求会先抵达前端的防火墙
2.防火墙识别用户身份,正常的请求通过内部交换机通过tcp连接后端的负载均衡,传递用户的http请求
3.负载接收到请求,会根据请求的内容进行下发任务,通过tcp连接后端的web,转发用户的http请求
4.web接收到用户的http请求后,会根据用户请求的内容进行解析,解析分为如下:
静态请求:web直接返回给负载均衡->防火墙->用户
动态请求:web向后端的动态程序建立TCP连接,将用户的动态http请求传递至动态程序->由动态程序进行解析
5.动态程序在解析的过程中,如果碰到查询数据库请求,则优先与缓存建立tcp连接,并发起数据查询操作。
6.如果缓存没有对应的数据,动态程序再次向数据库建立tcp连接,并发起查询操作。
7.最后数据由, 数据库->动态程序->缓存->web服务->负载均衡->防火墙->用户。

HTTP相关术语

PV UV IP

PV:打开一个页面,访问一次页面称为一次PV,产生了一次浏览,由于缓存问题,没法明确统计点击次数,有缓存服务器显示次数会少。(也有人说一次请求是一次PV,概念比较模糊)

UV:独立的设备(一个设备表示一个UV)

IP:表示独立的IP地址,是指公网IP

SOA

SOA(Service-Oriented Architecture 服务导向架构)是一种面向服务的松耦合架构,它将应用程序中的功能划分成一组可重用且独立的服务单元。每个服务单元都具有明确定义的接口和对外暴露的操作,这些操作可以通过互联网或企业内部网络进行访问和调用。

SOA的最大优势在于其松散耦合的设计,使得服务能够相对独立地进行开发、部署、更新和维护,从而提高了整个系统的可扩展性、灵活性和可维护性。

SOA架构还可以帮助组织实现更好的业务流程管理和IT资源分配,因为该架构可以通过标准化的接口和协议(例如SOAP、WSDL、UDDI等)进行交互,而不需要依赖特定的平台、语言或技术。另外,SOA还可以帮助企业实现基于服务的架构和组件化的开发模式,从而提高软件复用度和开发效率。

HTTP1.1,不支持并发,但是通过多次握手方式实现并发,最多6-8次同时握手。HTTP2.0就支持并发了。


我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

 文章来源地址https://www.toymoban.com/news/detail-443146.html

到了这里,关于【运维知识进阶篇】集群架构-HTTP协议详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包