一、HTTP协议

1、介绍

HTTP协议,全称HyperText Transfer Protocol,中文名为超文本传输协议,是互联网中最常用的一种网络协议。HTTP协议是互联网上常用的通信协议之一。它有很多的应用,但最流行的就是用于Web浏览器和Web服务器之间的通信,即WWW应用或称Web应用。www,全称World Wide Web,常称为Web,中文译为“万维网”。HTTP协议的WWW服务应用的默认端口为80,另外一个加密的WWW服务应用https的默认端口为443。

2、HTTP协议版本

HTTP/1.0

浏览器与服务器只保持短暂的连接(TCP短连接)

HTTP/1.1.

支持持久连接,在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和时间延迟。(TCP长连接)

3、 DNS解析原理

4、HTTP协议原理过程

5、 HTTP常用请求方法

HTTP方法

作用描述

GET  *****

客户端请求指定资源信息,服务器返回指定资源

HEAD

只请求响应报文中的HTTP头部

POST  *****

将客户端的数据提交到服务器,例如:注册表单

PUT

用从客户端向服务器传送的数据取代指定的文档内容

DELETE

请求服务器删除Reauest-URL所表示的资源

MOVE

请求服务器指定的页面移至加一个网络地址

6、HTTP常见状态码

状态代码

详细描述说明

200 -OK

服务器成功返回网页,成功的HTTP请求返回标准状态码

301 – Moved Permanetnly

永久跳转,所请求的网页将永久跳转到被设定的新位置

302 – Moved Temporarily

临时跳转,所请求的网页将临时跳转到被指定的新位置

403 – Forbidden

禁止访问,虽然这个请求是合法的,但是服务器端因为匹配了预先设置的规则而拒绝响应客户端的请求,此类问题一般为服务器或服务权限配置不当所致

404 – Not Found

服务器找不到客户端请求的页面,可能是客户端请求了服务器上不存在的资源所致

500 – internal Server Error

内部服务器错误,服务器遇到了意料不到的情况,不能完成客户的请求,一般为服务器的设置或内部程序问题导致,例如:selinux开启,而又没为HTTP设置规则许可

502 – Bad Gateway *****

坏的网关,一般是代理服务器请求后端服务时,后端服务不可用或没有完成响应网关服务器,通常为反向代理服务器下面的节点出问题所致,反向代理服务器无法与web服务器建立联系

503 – Service Unavailable

服务当前不可用,可能是服务器超载或停机维护导致,或者是反向代理服务器后面没有可以提供服务的节点

504 – Gateway Timeout

网关超时,一般是网关代理服务器请求后端服务时,后端服务没有在特定的时间内完成处理请求,多数是服务器过载导致没有在指定的时间内返回数据给前端代理服务器

7、取状态码方法(提供数据给监控服务使用)

方法一:[root@web01 ~]# curl -I www.baidu.com  -s|awk 'NR==1{print$2}'

方法二:[root@web01 ~]# curl -s -w "%{http_code}\n" -o /dev/null www.baidu.com

8、URL与URI概念

https://www.taobao.com/markets/3c/shuma?spm=a21bo.50862.201867-main.12.28689e73E6z0p9

URL

URI

全称为Uniform Resource Location,中文翻译为统一资源定位符

全称为Uniform Resource Identifier,中文翻译为统一资源标识符

https://www.taobao.com/#此为URL信息

markets/3c/shuma?spm=a21bo.50862.201867-main.12.28689e73E6z0p9#此为URI信息

9、网页资源种类

1、静态网页

①客户浏览器端解析程序,效率很高

② 扩展名格式对应程序文件的扩展名为:htm,html,xml,shtml,jpg等,js,css,swf,avi,wmv,flv视频格式

③ 后端没有数据库,和用户交互性差

2、动态网页

①网页扩展名后缀常见为:.asp、.aspx、.php、.js、.do、.cgi等

②网页一般以数据库技术为基础,大大降低了网站维护的工作量。

③采用动态网页技术的网站可以实现更多的功能,如用户注册、用户登录、在线调查、投票、用户管理、订单处理、发博文等。

④动态网页并不是独立存在于服务器上的网页文件,当用户请求服务器上的动态程序时,服务器解析这些程序并可能通过读取数据库来返回一个完整的网页内容。

⑤动态网页中的“?”在搜索引擎的收录方面存在一定的问题,搜索引擎一般不会从一个网站的数据库中访问全部网页,或者出于技术等方面的考虑,搜索蜘蛛一般不会去抓取网址中“?”后面的内      容,因此在企业通过搜索引擎进行推广时,需要针对采用动态网页的网站做一定的技术处理(伪静态技术),以便适应搜索引擎的抓取要求。

3、伪静态网页

将动态页面伪装成静态页面,便于被搜索引擎收录

 10、网站流量度量

独立IP

独立IP数是指不同IP地址的计算机访问网站时被计的总次数

PV

网站页面浏览量或点击量

UV

根据http请求报文:浏览器版本,OS

根据http响应报文:cookie(id)      --- 将客户端数据保存到本地

session       --- 将客户端数据保存到服务器端

11、IP PV UV 统计度量的方法

①IP统计度量的方法

利用awk或者相应统计命令,进行分析访问日志信息进行统计(重点)

在网站访问页面中嵌入统计程序代码(页面结尾处),只有全部网页加载完毕后,才进行数据统计

[root@m01 ~]# curl -s  www.oldboyedu.com|grep "hm.baidu" --color
<script type="text/javascript">
var _bdhmProtocol = (("https:" == document.location.protocol) ? " https://" : " http://"); document.write(unescape("%3Cscript src='" + _bdhmProtocol + "hm.baidu.com/h.js%3F9aa800f882f575237396648643111698' type='text/javascript'%3E%3C/script%3E"))
</script>

②PV统计度量的方法

利用awk或者相应统计命令,进行分析访问日志信息进行统计

在网站访问页面中嵌入统计程序代码(页面结尾处),只有全部网页加载完毕后,才进行数据统计

[root@m01 ~]# curl -s  www.oldboyedu.com|grep "hm.baidu" --color
<script type="text/javascript">
var _bdhmProtocol = (("https:" == document.location.protocol) ? " https://" : " http://"); document.write(unescape("%3Cscript src='" + _bdhmProtocol + "hm.baidu.com/h.js%3F9aa800f882f575237396648643111698' type='text/javascript'%3E%3C/script%3E"))
</script>

③UV统计度量的方法

通过客户端HTTP请求报文分析

通过Cookie信息鉴别统计

④工作中常用统计工具

网页信息统计软件-piwik

pwiki统计工具:(https://piwik.org/)

pwiki演示页面:https://piwik.org/demo

ELK软件介绍说明:http://blog.oldboyedu.com/elk/

⑤ 网站并发理解

A种理解:网站服务器每秒能够接收的最大用户请求数。

B种理解:网站服务器每秒能够响应的最大用户请求数。

C种理解:网站服务器在单位时间内能够处理的最大连接数。(理解网站并发连接数)

linux运维、架构之路-HTTP服务的更多相关文章

  1. linux运维架构师职业规划

    1.假如你从来未接触过Linux的话,首先要做的就找一本指导书来学习.现在公认的Linux的入门书籍是“鸟哥的私房菜”,讲的很全面,鸟哥的私房菜一共分为两部,一部是基础篇,一部是服务器篇.“鸟哥的私房 ...

  2. Linux运维五:定时任务crond服务

    一.crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动cro ...

  3. 从苦逼到牛逼,详解Linux运维工程师的打怪升级之路

    做运维也快四年多了,就像游戏打怪升级,升级后知识体系和运维体系也相对变化挺大,学习了很多新的知识点. 运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感 ...

  4. Linux运维企业架构实战系列

    Linux运维企业架构项目实战系列 项目实战1-LNMP的搭建.nginx的ssl加密.权限控制的实现 项目实战2-LVS.nginx实现负载均衡系列 2.1 项目实战2.1-实现基于LVS负载均衡集 ...

  5. Linux运维企业架构项目实战系列

    Linux运维企业架构项目实战系列 项目实战1—LNMP的搭建.nginx的ssl加密.权限控制的实现 项目实战2—LVS.nginx实现负载均衡系列2.1 项目实战2.1—实现基于LVS负载均衡集群 ...

  6. Linux 运维入门到跑路书单推荐

    一.基础入门 <鸟哥的Linux私房菜基础学习篇>:最具知名度的Linux入门书<鸟哥的Linux私房菜基础学习篇>,全面而详细地介绍了Linux操作系统. https://b ...

  7. Nginx+Lua+Redis整合实现高性能API接口 - 网站服务器 - LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区! - Powered by Discuz!

    Nginx+Lua+Redis整合实现高性能API接口 - 网站服务器 - LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区! - Powered by Disc ...

  8. 运维架构服务监控Open-Falcon

    一. 介绍 监控系统是整个运维环节,乃至整个产品生命周期中最重要的一环,事前及时预警发现故障,事后提供翔实的数据用于追查定位问题.监控系统作为一个成熟的运维产品,业界有很多开源的实现可供选择.当公司刚 ...

  9. Linux运维工程师成长必经之路

    本路线图是从0基础开始,全方位由浅入深,按照多年Linux培训经验和优秀教学方法制定的学习思路和学习方法,路线图包括初级入门.中级进阶.高级提升和资深冲刺四个阶段,每阶段对应着不同优秀的课程和学习方法 ...

  10. 转:linux运维工程师

    运维中关键技术点解剖:1 大量高并发网站的设计方案:2 高可靠.高可伸缩性网络架构设计:3 网站安全问题,如何避免被黑?4 南北互联问题,动态CDN解决方案:5 海量数据存储架构 一.什么是大型网站运 ...

随机推荐

  1. 十五、jenkins环境配置

    1. jenkins包下载,下载地址:https://jenkins.io/download/ 版本:Jenkins 2.134,下载war包 2. JDK下载:下载地址:http://www.ora ...

  2. flask_sqlalchemy获取动态 model名称 和 动态查询

    需求 想要实现动态的查询,表名,字段,字段值都不是固定的 obj=表名.query.filter_by(字段=值1).first() obj.字段=值2 首先动态获取db_model名字(即Role) ...

  3. MVC4:ajax Json 应用

    1)Json基础 2)Json 字符串和Json对象 3)应用例子 4)JsonHelper 1)Json 基础 JSON中对象通过"{}"来标识,一个"{}" ...

  4. Delphi XE2 之 FireMonkey 入门(30) - 数据绑定: TBindingsList: TBindExpression 的 OnAssigningValue 事件

    Delphi XE2 之 FireMonkey 入门(30) - 数据绑定: TBindingsList: TBindExpression 的 OnAssigningValue 事件 表达式中的函数有 ...

  5. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_07 缓冲流_1_缓冲流的原理

    一个字节一个字节的读取,先读取到a,a给到os操作系统.os再给JVM,.jVM再把a给java程序 读完a再读取b.这样一层层的返回,效率低下 一次读取,缓冲区数组返回来.

  6. 桌面应用开发用到的Framework

    桌面应用开发用到的Framework https://github.com/zhangqs008/Framework_Winform

  7. Java设计模式——建造者模式(创建型模式)

    概述   建造者模式也称为生成器模式,是一种对象创建型模式,它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象.   建造者模式意在为重叠构造 ...

  8. Nginx配置之rewrite、proxy_pass、upstream、location

    如图,这是Nginx的配置文件nginx.conf中的一段配置代码. 在http段中定义了一个名为webservers的upstream模块,主要用于负载均衡. 在server模块中,定义了一个loc ...

  9. Soap从入门到实战

    Soap从入门到实战 参考文章:https://howtodoinjava.com/spring-boot/spring-soap-client-webservicetemplate/ 使用的技术:s ...

  10. [2019杭电多校第二场][hdu6601]Keen On Everything But Triangle

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6601 题意是说用给定区间内的数字组成周长最大的三角形. 大致做法就是求区间第1大,第2大和第3大然后判 ...