学习 《构建高并发网站结构》记录

一,大型网站的特点:

1,并发数量高,访问量大。

2,处理的数据大(上1势必造成如下)

3,用户分布广泛,网络环境复杂。

4,稳定性高。

5,易于扩展。

6,安全性高。

二,大型网站的基础设施

1,服务器介绍

1.1,塔式服务器 :外形与普通pc机差不多,个头相对大一点。特点,插槽多,扩展性强,常用于入门级和工作组级别的服务器,不过相对占空间。

1.2,机架式服务器:宽度为19英寸,高度以U为单位(1U=1.75英寸=44.45毫米

这种服务器占用空间小,可以将多台服务器装到1个机柜上,方便统一管理,但由于内间的限制,扩充性较受到限制。通常有1U、2U、3U、4U、5U、7U几种标准服务。这种服务器多用于服务器数量较多的大型企业使用,也有不少企业采用这种类型的服务器,但将服务器交付给专门的服务器托管机构来托管,尤其是目前很多网站的服务器都采用这种方式。 

1.3,刀片式服务器:主要结构为一大型主体机箱,内部可插上许多“刀片”,其中每一块刀片实际上就是一块系统母板,类似于一个个独立的服务器,它们可以通过本地硬盘启动自己的操作系统。每一块刀片可以运行自己的系统,服务于指定的不同用户群,相互之间没有关联。而且,也可以用系统软件将这些主板集合成一个服务器集群。在集群模式下,所有的刀片可以连接起来提供高速的网络环境,共享资源,为相同的用户群服务。在集群中插入新的刀片,就可以提高整体性能。而由于每块刀片都是热插拔的,所以,系统可以轻松地进行替换,并且将维护时间减少到最小,比机器式服务器更节省空间,散热也比机架式的相对好点,不过相对贵点。

2,虚拟主机、vps主机、云主机。

2.1,虚拟主机:虚拟主机是共享主机的一种形式,共享主机其实就是一台服务器上有许多网站,大家都共享这台服务器的硬件和带宽,如果它发生故障,所有的网站都会无法访问。

2.2,vps主机:将一台服务器分割成多个虚拟专享服务器(vps),每个vps都可以分配单独的公网Ip,独立的操作系统个、独立的操作空间、独立的cpu资源等。相对虚拟主机,可操作的自由度很强,有点和windows下的虚拟机很相似。

2.3,云主机:它共享的不再局限于某台服务器,而是云里面的所有服务器,主要特点就是稳定,如果出现某台服务器后某条线路出现问题,系统会自动把你的网站和IP地址分配到其他服务器上去,绝不会让你的网站出现无法访问的情况。

3,网络、安全设备(交换机、路由器、防火墙)

4,网络存储技术

4.1,DAS(直接附加存储)   直接附加存储是指将存储设备通过SCSI接口直接连接到一台服务器上使用,购置成本较低,配置简单,使用过程和使用本机硬盘无太大区别。

4.2, NAS (网络附加存储) NAS实际上带有瘦服务器的存储设备,其实你可以把它理解为就是网络文件服务器。NAS设备直接连接到TCP/IP网络上,网络服务器通过TCP/IP网络存取管理数据。NAS作为一种瘦服务器系统,易于安装和部署,管理使用也很方便。同时由于可以允许客户机不通过服务器直接在NAS中存取数据,因此对服务器来说可以减少系统开销。常见的品牌群晖  威联通等。

4.3, SAN(存储区域网)  独立于TCP/IP网络之外且就是为存储而建立的专门性网络就是SAN。由于使用高端的RAID阵列技术,所以它甚至能达到2-4GB/S的恐怖传输速率。

不过这个成本相对比较高,因为它需要光钎通道和SAN阵列柜,小型企业一般不会使用这种。

三,基础概念

1,http协议:超文本传输协议,默认端口号80,如果是是https的话,默认端口号是443。那么https是对用户的请求是经加密的,换句话说,如果有人将我们的请求数据劫货了,他也没法在我们的请求中找到有用信息。

2,htpp主流版本分为1.1 1.0  二者之间的最大区别在于1.1是支持长久连接的、支持host请求头字段,默认情况下我们使用浏览器访问网站使用的http协议都是1.1,我们也可以选择1.0.

3,请求方法,也就是我们去访问网站,具体的操作是什么。常见的有GET POST HEAD PUT DELETE 

3.1 GET:向特定的资源提交请求

3.2 POST:向指定的资源提交数据(比如表单、文件)

3.3  PUT:向指定的资源的位置上传内容

3.4  DELETE:删除某一个资源的,类似于数据库的delete的操作。

4,常见的状态码 200 301 302 304 401 403 404 500 502 503 504

200,ok                          304,未修改文档          404,未找到资源                                      

301,永久重定向               401,用户认证             500,内部错误

302,临时重定向             403,禁止访问              502,请求未完成,一般是nginx找不到php

503,请求未完成,服务器临时过载或宕机。一般是做代理时,后端服务器出现问题。

504,网关超时,一般数据库出现问题常会显示这个代码。

5,网站元素的解说 

JS CSS PNG Jpeg rar ...

6,URL、URI

URL,统一资源定位符 ,URI,统一资源标识符。其实URI是包括的URL的,URL一般是以http开头的,通过这个打开个页面,而有的uri你在地址栏输入的时候根本没法访问。

7,静态网页、动态网页、伪静态。

7.1 静态网页,一般是以.html、.htm结尾的网页。

7.2 动态网页,一般后缀名.asp .php .jsp .cgi的网页,并且在动态网页网址中有一个标志性的符号——“?”,最主要的是他要是要后台数据库进行交互的。
7.3 伪静态,  顾名思义,他其实是动态的网页,通过rewire的功能,表现出来的是1个静态网页,这样有利于网站的排名。

8,常见的web服务器软件

apache nginx  iis  tomcat

9,量级术语

9.1  ip uv pv 

ip 值得是有多少个ip来访问该站点。

uv 指的是网站有多少人来访问,或者说是有多少台电脑来访问。

pv 指的是访问这个网站的页面有多少,包括刷新。

9.2 并发连接数 吞吐量

并非连接数,同一时间内有多少个人来访问这个网站。

吞吐量:在某一个时刻,我们服务器能处理的请求数。

9.3,如何评估网站最大并非连接数。

9.3.1 :专业工具loadrunner

9.3.2:临时测试工具 ab  

yum instll -y httpd 默认带有ab命令,需要具体到某个文件

ab -c 100 -n 1000  www.qq.com/index.php

-c 表示并发数

-n 表示请求数

重要的指标;

Requests per second: 每秒钟处理多少个请求

Time per request:处理并发数花费多长时间  这里的并发数是100  

Time per request:每完成1次并非数使用的时间。

原文地址:https://www.cnblogs.com/lin1/p/5535849.html