三十二、http与www服务介绍
一、用户访问百度(www.baidu.com)
用户访问在url中输入地址后,首先会访问本地的缓存和hosts文件,如果没有,会访问本地DNS,在就是根域和顶级域名等,在前面已经说过了,这里不再赘述。
这里说明两个:查看本地windows缓存: ipconfig /displaydns
hosts文件路径:cmd下输入window32,在就是drives/etc/hosts
二、http协议简介
http是超文本传输协议,是互联网上应用最为广泛的一种网络协议。所有的www都必须遵守这个标准,http除了www还有很多东西,网页是www服务,但遵循http协议。http有很多应用,但著名的是Web浏览器和Web服务器之间的双工通信。 所以http包含www,www使用http协议,网页就是www服务。
www就是万维网,默认端口使80,加密的是https 443
三、http协议请求头查看:
1)wget 网址 2)curl -I 网址 (不加I表示内容的查看,加I表示还只查看请求头信息)
四、动态web服务请求流程:

五、概念
1)静态页面:所有程序在客户浏览器端解析,容易被搜索引擎收录,客户浏览器端解析程序,效率很高。
2)动态网页:一般以数据库技术为基础,可以大大降低网站维护的工作量,动态网页大多数并不是独立存在与服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页,效率很差,并发低,尽可能转为静态网页。
3)伪静态:就是动态变成静态,便于搜索引擎收录和提升用户体验。动态网页伪静态技术如:rewrite即url地址重写等技术。
在速度方面:静态:动态===》10:1
在架构中,尽可能使网页为静态的,这样速度更快。高并发访问的核心原其实就一句化:“把所有的用户访问请求都尽量往前推”。由于静态程序在客户端解析,大大降低了服务器端的压力,因此解析效率更高,在实际高并发网站架构中,我们可以考虑把用户请求的数据解析后存为静态文件放在磁盘中或者内存中,来降低动态服务器的压力,从而提升用户体验。
这里想说明的是,动态服务器中,异步的是消息中间件,消息队列的应用。
六、静态页面的语言是静态语言,核心一般是html语言,动态web语言有php,python等,需要在服务端解析。
例如php程序的经典组合架构:
lamp(linux apache mysql php) 在中小企业中应用非常广泛。
lnmp(linux nginx mysql php) 在大型企业的首选,这里apache是老牌的企业软件,而nginx是新生的代表,解析效率高些。
七、访问模式:
访问模式就是:
B/S:缺点:兼容性差 安全不好
C/S:缺点:适用性窄,维护成本高,升级一次,所有客户端都要升级。
八、三个指标:
IP:独立IP数,不同的IP地址的计算机访问网站的总次数,是网站流量分析的一个重要指标,一天内相同IP地址被计算仅一次。
PV: 访问量,页面点击量,从浏览器发出一个对网络web服务器的请求,网络web服务器接到这个请求后,会将该请求对应的一个网页发送会客户端浏览器。
UV: 独立访客,一个客户端(pc、移动端)一天之内只算一次。(比如cookies)
九、什么是并发?如何理解并发?
单位时间内,服务器能够处理的最大连接数,注意这里是单位时间,不是一秒,(有的请求1秒结束,有的可能是10秒结束),指的类似于吞吐量这个意思,仁者见仁,智者见智吧,也没有决定正确的。
十、一个例子:处理以下文件内容,将域名取出并进行计数排序,如处理
http://www.etiantian.org/index.html
http://www.etiantian.org/1.html
http://post.etiantian.org/index.html
http://mp3.etiantian.org/index.html
http://www.etiantian.org/3.html
http://post.etiantian.org/2.html
解:这里给出两种方法
1.uniq和sort的结合使用:uniq和sort结合使用,因为如果一组信息,相同部分的挨着,单独用uniq是不去重的
uniq去重:-c表示计数
sort 对于文本的行进行排序 -n 按照数字排序 -r 倒序 -t 分隔符 -k 指定排序的列
[root@djw1 ~]# awk -F "/"  '{print $3}'  ceshi.txt |sort -rn|uniq -c
      3 www.etiantian.org
      2 post.etiantian.org
      1 mp3.etiantian.org
2.awk庖丁解牛方法:
   [root@djw1 ~]# awk -F "/"  '{++S[$3]} END {for(key in S) print S[key],key}'  ceshi.txt |sort  -rn
3 www.etiantian.org
2 post.etiantian.org
1 mp3.etiantian.org
分析:此类问题是运维工作中最常见的问题。可以演变成分析日志,查看TCP各个状态连接数,查看单IP连接数排名等等
完结!
三十二、http与www服务介绍的更多相关文章
- 进击的Python【第十二章】:mysql介绍与简单操作,sqlachemy介绍与简单应用
		
进击的Python[第十二章]:mysql介绍与简单操作,sqlachemy介绍与简单应用 一.数据库介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数 ...
 - JAVA之旅(三十二)——JAVA网络请求,IP地址,TCP/UDP通讯协议概述,Socket,UDP传输,多线程UDP聊天应用
		
JAVA之旅(三十二)--JAVA网络请求,IP地址,TCP/UDP通讯协议概述,Socket,UDP传输,多线程UDP聊天应用 GUI写到一半电脑系统挂了,也就算了,最多GUI还有一个提示框和实例, ...
 - ASP 三十二条精华代码 (1)
		
ASP 三十二条精华代码 (1) 2009-08-10 09:53:03 www.hackbase.com 来源:互联网 1. oncontextmenu="window.event.r ...
 - FreeSql (三十二)Aop
		
FreeSql AOP 已有的功能介绍,未来为会根据用户需求不断增强. 审计 CRUD 马云说过,996是修福报.对于多数程序员来说,加班是好事...起码不是闲人,不会下岗. 当如果因为某个 sql ...
 - 《手把手教你》系列技巧篇(三十二)-java+ selenium自动化测试-select 下拉框(详解教程)
		
1.简介 在实际自动化测试过程中,我们也避免不了会遇到下拉选择的测试,因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助. 2.select 下拉框 2.1Select ...
 - Bootstrap <基础三十二>模态框(Modal)插件
		
模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 如果您想要单独引用该插件的功能,那么您需要引用 ...
 - COJ968 WZJ的数据结构(负三十二)
		
WZJ的数据结构(负三十二) 难度级别:D: 运行时间限制:5000ms: 运行空间限制:262144KB: 代码长度限制:2000000B 试题描述 给你一棵N个点的无根树,边上均有权值,每个点上有 ...
 - NeHe OpenGL教程 第三十二课:拾取游戏
		
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
 - 三十二、Java图形化界面设计——布局管理器之CardLayout(卡片布局)
		
摘自 http://blog.csdn.net/liujun13579/article/details/7773945 三十二.Java图形化界面设计--布局管理器之CardLayout(卡片布局) ...
 - Java进阶(三十二) HttpClient使用详解
		
Java进阶(三十二) HttpClient使用详解 Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们 ...
 
随机推荐
- spring boot redis 缓存(cache)集成
			
Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 sp ...
 - django-替代为自定义的User model
			
https://docs.djangoproject.com/en/dev/topics/auth/customizing/#substituting-a-custom-user-model Subs ...
 - CodeForces - 748F Santa Clauses and a Soccer Championship
			
题意:有k对队伍,每对队伍之间将举行两次比赛,两支队伍各主办一次.住宿的地方要求在两支队伍家乡的最短路的结点上或者在两支队伍的家乡.问在选择住宿处最少的情况下,怎么组成这k对队伍? 分析: 1.因为n ...
 - Keras + Flask 提供接口服务的坑~~~
			
最近在搞Keras,训练完的模型要提供个预测服务出来.就想了个办法,通过Flask提供一个http服务,后来发现也能正常跑,但是每次预测都需要加载模型,效率非常低. 然后就把模型加载到全局,每次要用的 ...
 - 对python里的装饰器
			
内裤可以用来遮羞,但是到了冬天它没法为我们防风御寒,聪明的人们发明了长裤,有了长裤后宝宝再也不冷了,装饰器就像我们这里说的长裤,在不影响内裤作用的前提下,给我们的身子提供了保暖的功效. 再回到我们的主 ...
 - mysql 启动报错Host name could not be resolved解决办法
			
mysql 启动报错信息如下: [root@xxx ~]# 2018-01-26 17:06:35 33 [Warning] Host name 'bogon' could not be resolv ...
 - opencv进行视频播放每帧处理,读取视频失败
			
cv::VideoCapture capture(filename); if (!capture.isOpened()) { cout << "open video error& ...
 - Python内置文件
			
概述 为了提升效率,Python有些内置文件如 __pycache__.py 详解 1)__pycache__.py, python程序运行时不需要编译成二进制代码,而直接从源码运行程序 Python ...
 - 练习-HTML表单
			
<html lang="en"> <head> <h1>大学生爱好调查</h1> <meta charset="ut ...
 - java实现图片文件与Base64的互转
			
通过form表单上传图片时,有时候web容器对文件大小的限制会影响我们上传.这时,前端页面可以考虑将图片转换成base64串来实现上传. 图片与Base64的互转,其实就是利用了文件流与Base64的 ...