坐蓐Web结构优化方案(动态转静态)【美高梅手

作者:电脑系统

一、门户新闻业务:

UV

UV,即独立访客(Unique Visitor),同一个客户端(PC或移动端)访问网站被记为一个访客,一天之内相同的客户端只计算一次。UV一般是以Cookie等技术作为统计依据的。

IP、PV、UV是多数网站衡量网站流量的重要指标之一。

请求头部

请求头部由关键字/值组成,每行一对,关键字和值用英文冒号":"分隔。请求头部的作用是客户端把请求的相关信息告诉给服务器。

请求头信息

说明

Accept:image/gif,image/jpeg

媒体类型

Accept -Language:zh-cn

语言类型

Accept –Encoding:gzip,deflate

支持压缩

User -Agent:Mozilla/4.0(compatible;MSIE 6.0;Windows NT;…)

客户端类型

Host:<a href="http://www.baidu.com">www.baidu.com</a>

主机名

与请求报文相关的最常用的请求头是Content-Type和Content-Length。

 

HTTP协议版本

主要版本为 HTTP1.0和1.1

HTTP1.0

可支持更多的请求方法,并能对多媒体对象进行处理;

规定client与server只保持短暂的连接,客户端每次请求都需要与服务器建立一个TCP连接,服务器完成请求处理后即断开TCP连接;

服务器不跟踪每个客户端,也不记录过去的请求;

HTTP1.1

重点修复HTTP设计中的缺陷,从可扩展性、缓存处理、带宽优化、持久连接、host头、错误通知、消息传递、内容协商等方面做了改进;

支持持久连接,在一个TCP连接上可以传送多个HTTP请求和响应,减少建立和关闭连接的延迟;

增加更多的请求头和响应头信息,用以增强HTTP功能;

持久连接,通过增加新的请求头来帮助实现,如 Connection的请求头的值为Keep-Alive时,表示Client通知Server返回本次请求结果后保持连接。Connection请求头为close时,关闭连接;

门户新闻业务

新闻网站的特点是一旦发布完成,几乎不会再改动网页内容。因此,对于新闻的业务内容静态化相对比较简单:

第一步:程序支持发布内容直接转成静态。

第二步:运营编辑人员发布新闻网页后,后台程序立刻将动态网页生成静态文件。

第三步:运维人员通过触发把生成的静态网页发布到事先搭建好的公司缓存集群服务器上,或者把静态内容同步到全国所有CDN服务器节点上,然后,再提供给用户访问浏览。

 

URL

Uniform Resource Location,统一资源定位,也被称为网址;

URL由三部分组成,协议 IP或域名 具体地址(目录,文件);

URL是URI命名机制的一个子集;

HTTP请求报文

HTTP请求报文由请求行、请求头部(header)、空行和请求报文主体几个部分组成。

请求行:请求方法URL协议版本,例如:GET /index.html HTTP/1.1。

请求头:

字段名1:值1

字段名2:值2

……

例如:

Accept:image/gif,image/jpeg

Accept -Language:zh-cn

……

空行:空白无内容

请求报文主体:GET方法没有请求报文主体,POST方法才有。

    c. 运维人员通过发布或时间触发,把运营编辑生成的静态网页发布到事先搭建好的公司缓存集群服务器上,或者把静态内容同步到购买的全国所有CDN服务器节点上,然后,再提供给用户去访问浏览。

HTTP资源

网站流量度量术语

IP(独立IP):即Internet Protocol,这里指独立IP数,独立IP数是指不同IP地址的计算机访问网站的被计算的总次数。独立IP数是衡量网站流量的一个重要指标。一般一天内(00:00-24:00)内相同IP地址的客户端访问网站页面只被计算为一次。

PV(访问量):即Page View,页面浏览量或点击量,不管客户端是不是相同,也不管IP是不是相同。用户每次访问一个网站页面都会被计算一个PV。

UV(独立访客):即Unique Visitor,同一台客户端(PC或移动端)访问网站被计算为一个访客。UV一般是以客户端Cookie等技术作为统计数据的,实际统计会有误差。

  2. 步骤:

HTTP报文

HTTP请求报文

HTTP Request Message由请求行、请求头部(header)、空行和请求报文主体组成;

请求行,用来说明Client想要做什么;

美高梅手机登录网站 1

请求行信息

头部,通过客户端把请求的相关信息告诉给服务器;

美高梅手机登录网站 2

常见请求头部

空行,发送回车符和换行符,通知Server一下不会有请求头部的信息了;

请求报文主体,包括要发送给Server的数据信息;

HTTP响应报文

HTTP Response Message由起始行、响应头部、空行和响应报文主体组成;

起始行也叫状态行,用来说明服务器响应客户端请求的状态(HTTP/1.1 200 OK);

美高梅手机登录网站 3

响应头部

空行,发送回车符和换行符,通知客户端空行下无头部信息;

响应报文主体,装载了要返回给客户端的数据;

一个简单的请求报文和响应报文举例

美高梅手机登录网站 4

请求和响应

HTTP协议原理

HTTP协议属于OSI模型中的第七层应用层协议,HTTP协议的重要应用就是WWW服务应用。以WWW服务应用为例,HTTP协议进行通信时,需要有客户端即终端用户和服务端即web服务器,当web客户端向web服务器发送请求报文之前,先要通过TCP/IP协议在web客户端和服务器之间建立一个TCP/IP连接。整个http协议请求的工作流程原理如下:

1、终端客户在web浏览器地址栏输入访问地址www.baidu.com。

2、web浏览器请求DNS服务器把域名www.baidu.com转换成web服务器的IP地址,此处的解析过程就是DNS解析的原理流程。

3、web浏览器将端口号(默认80)从访问地址URL中解析出来。

4、web浏览器通过解析后的IP地址及端口号与web服务器之间建立一条TCP连接。

5、建立TCP连接后,web浏览器向web服务器发送一条HTTP请求报文。

6、web服务器响应并读取浏览器的请求信息,并返回一条HTTP响应报文。

7、web服务器关闭http连接,关闭tcp连接,web浏览器显示访问的网站内容到屏幕。

动态web服务请求流程:

客户端发送请求àhttpd得到请求àhttpd解析请求的格式(html、css)à请求响应php解析àphp解析程序执行完毕àdb(数据库),返回结果(html)给httpdàhttpd把数据返回给客户端(可能是压缩过的)à浏览器接到返回结果(解压)。

 

并发连接数

在Linux运维人员面试中,会问到:你的公司网站的最大并发是多少?

那么到底什么是并发,如何理解并发呢?

网上有三种说法:

A:网站服务器每秒钟能够接受的最大用户请求;

B:网站服务器每秒能够相应的最大用户请求;

C:网站服务器在单位时间内能够处理的最大连接数;

# C种理解感觉更为准确一些

对于网站服务器来说,所谓并发就是单位时间内,服务器能够同时处理的最大连接数,因此有的请求1秒结束,有的请求可能10秒才结束。因此,网站并发并不是客户端每秒的并发请求数,而是服务器在一段时间内可以处理的最大连接数,这个连接包含正在建立的连接和已经建立的连接。

其他服务并发连接

QPS(Query Per Second)每秒查询率

QPS用于衡量一个特定的查询服务器在规定的时间内所处理流量多少的标准。运维中,DNS系统及数据库等服务的查询性能经常用每秒查询率来衡量。

IOPS(Input/Output Operation Per Second)每秒进行I/O操作的次数

IOPS,多用于数据库等场合,衡量随机访问的性能。存储端的IOPS性能和主机端的I/O是不同的,IOPS是指存储每秒可接受多少次主机发出的访问,主机的一次I/O需要多次访问存储才可以完成。例如,主机写入一个最小的数据块,也要经过|“发送写入请求、写入数据、收到写入请求”这三个步骤,也就是三个存储端访问。

常见企业网站排名及PV/IP访问量

美高梅手机登录网站 5

常见企业网站排名及PV/IP访问量

伪静态网页特点

从网站的URL地址看,伪静态表面上看起来是静态内容(如地址结尾带html),这是通过rewite规则来实现的URL地址重写。改写后的URL地址规范、美观,有利于搜索引擎抓取,以及用户访问体验加强。伪静态网页还是动态网页,从性能上考虑,伪静态功能不但没有提示网站性能,反而会降低网站的性能。

    a. 用户上传视频,需要转码。

HTTP协议

HTTP状态码

HTTP状态码(HTTP Status Code)是用来表示web服务器响应http请求状态的数字代码。状态码是一个三位数字代码,作业是告知web客户端此次的请求是否成功,或者是采取其它的动作方式。

状态码范围

作用描述

100-199

指定客户端应响应的某些动作

200-299

表示请求成功

300-399

已经移动的文件并且常被包含在定位头信息中指定新的地址信息。

400-499

客户端错误

500-599

服务器错误

常见的状态码及对应的作用

200 - OK:服务器成功返回网页,成功的http请求,返回的标准状态码。

301 - Moved Permanently:永久跳转,所有请求的网页将永久跳转到被设定的新位置。

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

500 - Internal Server Error:内部服务器错误,服务器遇到了意料不到的情况,不能完成客户端请求,一般是服务器的设置或者内部程序问题所致。例如:SElinux开启,而又没有为http设置规则许可。

502 - Bad Gateway:网关问题,一般是代理服务器请求后端服务时,后端服务不可用或者没有完成响应网关服务器。一般为代理服务器下面的节点出问题所致。

503 - Service Unavailable:服务当前不可用,可能因为服务器超载或停机维护导致,或者是代理服务器后面没有可以提供服务的节点。

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

  1. 特点:与门户新闻业务特点相差不大

HTTP服务基础

动态网页资源特点

1、网页扩展名常见为asp、aspx、php、jsp、do、cgi等。

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

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

4、动态网页并不是独立存在于服务器上的一个个网页文件(php/jsp),当用户请求服务器上的动态程序时,服务器解析程序并读取数据库返回一个完整的网页内容。

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

6、程序在服务器端解析,服务端如:php引擎、java容器(tomcat、resin、jboss、weblogic),由于程序在服务端解析,因此,会消耗大量的CPU和内存等资源,并且多数还要读取数据库等服务,因此,访问效率不如静态网页。

    a. 程序要支持发布的内容有动态转成静态的功能。

URI

Uniform Resource Identifier,统一资源标识符,用于标识某一互联网资源名称的字符串,这个字符串在世界范围内唯一标识并定位某一个信息资源;

互联网上的每个可用的数据资源(图片、视频等)皆通过URI进行定位;

web服务

 Infi-chu:

PV

PV,即访问量(Page View)、点击量。不管客户端是不是相同,用户只要访问网站页面就会被计算PV,一次计一个PV。

PV的具体度量方法就是从客户浏览器发出一个对Web服务器的请(Request),Web服务器接到这个请求后,将该请求对应的网页(Page)发送给浏览器,这样就产生了一个PV。

HTTP协议

HTTP协议,全称HyperText Transfer Protocol即超文本传输协议,是互联网中最常用的一种网络协议。HTTP协议是互联网上的通信协议方案之一。它有很多的应用, 但最流行的就是用于web浏览器和web服务器之间的通信应用,即www应用或web应用。HTTP协议位于OSI模型中第7层应用层。

HTTP协议的WWW服务应用的默认服务端口为80,另一个加密的www服务应用(https)的默认服务端口为443,用于网银、支付等和资金交易相关的业务。

HTTP方法

作用描述

GET

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

HEAD

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

POST

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

PUT

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

DELETE

请求服务器删除指定的资源

MOVE

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

三、Blog、BBS、SNS、微博社区业务、电商:

静态网页资源

静态网页是相对于动态网页而言的,是指没有后台数据库、不含程序(如PHP)、不可交互的网页;

静态网页的维护和更新比较麻烦;

常见的静态网页语言有HTML、JS、CSS、XML等;

静态网页常见扩展名:

纯文本类数据: .htm、.html、.xml、.js、.css等;

图片文件类数据:.jpg、.gif、.png、.doc、.txt等;

视频类数据:.mp4、.avi、.wmv、.swf等;

静态网页资源重要特征:

1,每个页面都有一个固定的URL地址,且地址中不含 "?" 或 “&” 等特殊符号;

2,网页内容一经发布到网址服务器上,无论是否有用户访问,每个网页的内容都是保存在网站服务器文件系统上,每个网页都是一个独立的文件;

3,网页内容是固定不变的;

4,因为网页没有数据库支持,所以在网站制作和维护方面的工作了较大,当网站信息量很大时,完全依赖静态网页比较困难;

5,网页交互性差,在程序功能实现方面有较大限制;

6,网页程序在用户浏览器解析,程序解析效率很高,由于服务器不进行解析,并且不需要读取数据库,因此服务器端可以接受更多的并发访问。当客户端向服务器请求数据时,服务器会直接从磁盘文件系统上返回数据(不做任何解析),在Client解析并展现出来;

由于静态网页不需要再服务器端解析,因此服务器的压力也大大减轻了!

在高并发、高访问量的场景下做架构优化,设计的关键环节就是把动态网页转换成静态网页,而不是直接请求数据库和动态服务器,并且可以把静态内容推送到前端缓存(或CDN)中,这样就可以提升用户体验,节约服务器和维护成本;

静态网页资源的重要特征

1、每个页面都有一个固定的URL地址,且URL一般以.html、.htm、.shtml等常见形式为后缀,并且地址中不含有问号"?"或"&"等特殊符号。

2、网页内容一经发布到网站服务器上,无论是否有用户访问,每个网页的内容都是保存在网站服务器文件系统上的,也就是说,静态网页是实实在在保存在服务器上的文件实体,每个网页都是一个单独的文件。

3、网页内容相对固定的,因此,容易被搜索引擎收录。

4、网页没有数据库的支持,在网站制作和维护方面工作量较大,因此当网站信息量很大时完全依靠静态网页制作的方式比较困难。

5、网页的交互性较差,在程序功能实现方面有较大的限制。

6、网页程序在用户浏览器端解析,如IE浏览器,这样程序解析效率更高,由于服务器端不进行解析,并且不需要读取数据库,因此可接收更多的并发访问。当客户端向服务器请求数据时,服务器直接把数据从磁盘上返回(不做任何解析),当客户端拿到数据后,在浏览器端解析展示出来。

    c. 一些热点视频提前被推送到CDN的核心节点或全国所有CDN服务器节点

IP

IP,这里指的是独立IP数。指不同IP地址的计算机访问网站时被计入的总次数,独立IP是衡量网站流量的一个重要指标。

有关动态网页架构思想

1、一般来说,静态网页的效果是动态网页的10-30倍。

2、动态网页效率很差,并发能力也很低,高并发场景中,应尽可能转换成静态网页提供服务。

3、动态转静态也要根据业务需求设计,例如,对于更新频繁的网站会产生数据不一致的情况,即用户看到的数据不会是最新的内容。

4、动态转静态,高并发网站必备的架构方案,是高级架构师的职责所在。

WWW服务软件介绍

视频网站业务

优酷视频,用户上传视频,需要经历转码-审核的过程,大概1-2小时,转码-审核-推送(同步到全国所有CDN服务器节点)。

    b. 服务端审核(大约1H)

当前互联网主流Web服务说明

当前互联网主流Web服务软件

Apache:这是中小型Web服务的主流;

Nginx:大型网站Web服务的主流,Nginx的分支Tengine(

Lighttpd:这是一个不愠不火的优秀Web软件,社区不活跃,静态解析效率很高,在Nginx流行前,它是大并发静态业务的首选;

常用来提供动态服务的软件

PHP(FastCGI):大中小型网站都会使用,动态网页语言PHP程序的解析容器。它可配合Apache解析动态程序,不过,这里的PHP不是FastCGI守护进程模式,而是mod_php45.so(module)。也可配合Nginx解析动态程序,此时的PHP常用FastCGI守护进程模式提供服务;

Tomcat:中小企业动态Web服务主流,互联网Java容器主流;

Resin:大型动态Web服务主流,互联网Java容器主流;

IIS(Internet Informatica Service):微软windows下的Web服务软件;

Python(Uwsgi)

请求行

请求行是请求报文的第一行,用来说明客户端想要做什么。内容由请求方法字段、URL字段和HTTP协议版本字段共3个字段组成,它们之间用空格分隔。例如:GET /index.html HTTP/1.1。

  2. 解决思路:一般通过异步的方式处理,比如:消息中间件技术 NoSQL集群技术来实现转换

媒体类型

互联网上的数据有很多不同的类型,Web服务会把通过Web传输的每个对象都打上MIME类型(MIME Type)的数据标签格式。MIME(Multipurpose Internet Mail Extension,多用途因特网邮件扩展),用来描述数据并标记不同的数据内容类型。

当Web服务器响应HTTP请求时,回味每一个HTTP对象数据加一个MIME类型;当Client获取到Server返回的对象时,回去查看相关的MIME类型,并进行相应处理。

MIME类型存在于HTTP响应报文的头部信息里,它是一种文本标记,表示一种主要的对象类型和一个特定的子类型。

美高梅手机登录网站 6

常见MIME类型

cat  /etc/nginx/mime.types    #查看Nginx支持的媒体类型

HTTP相应报文

HTTP相应报文由起始行、响应头部(header)、空行和响应报文主体几个部分组成,与HTTP请求报文格式类似。

  2. 步骤:

HTTP状态码

HTTP状态码介绍

HTTP Status Code,用来表示Server响应HTTP请求状态的数字代码,作用是告知Client此次请求是否成功,或者是否要采取其他动作方式。

美高梅手机登录网站 7

HTTP1.1中五大类状态码

美高梅手机登录网站 8

最常见状态码

美高梅手机登录网站 9

最常见状态码

curl -I www.baidu.com    #可通过这个查看相关信息

常用来提供动态服务的软件

1、php(fastcgi):大中小型网站都会使用,动态网页语言php程序的解析容器。

2、tomcat:中小型企业动态web服务主流,互联网java容器主流(jsp、do)。

3、resin:大型动态web服务主流,互联网java容器主流(jsp、do)。

4、IIS:微软的windows下的web服务软件(asp、aspx)。

HTTP协议 HTTP协议,全称HyperText Transfer Protocol即超文本传输协议,是互联网中最常用的一种网络协议。HTTP协议是互联网...

二、视频网站业务:

WWW软件全球使用排名参考

美高梅手机登录网站 10

2015年www软件使用排行

常见企业网站排名及PV/IP访问量

网站

独立IP/日

PV数/日

网站并发级别

机器数量

www.51cto.com

582000

1338600

10000

50台

www.ganji.com

1734000

13872000

10000-30000

几百台

www.58.com

1398000

22927200

10000-30000

几百台

www.weibo.com

30180000

166593600

几十万

千台

www.taobao.com

46620000

489510000

几十万-几百万

万台

www.jd.com

6108000

98949600

数万

千台

www.163.com

10320000

79154400

十万

千台

www.suning.com

930000

7254000

10000-30000

百台

    b. 运营编辑人员发布新闻网页后,后台程序立刻将动态网页生成静态文件。

HTTP请求方法

每个HTTP请求报文都包含一个方法,用以告诉Web Server需要执行哪些具体动作。

这些动作包括:GET、HEAD、POST、PUT、DELETE、MOVE,这些HTTP请求报文包括的方法被称为HTTP请求方法。

美高梅手机登录网站 11

常用HTTP请求方法

常用来提供静态web服务的软件

1、apache:中小型web服务的主流,web服务器中的老大哥。

2、nginx:大型网站web服务主流。nginx的分支tengine目前也在飞速发展。

3、lighttpd:社区不活跃,静态解析效率很高。

  1. 特点:这几类业务由动态转为静态是比较困难的,因为,用户发布信息后,随时可能被增、删、改、查。

伪静态网页

伪静态网页就是通过某些技术(如rewrite)把动态网页的URL地址伪装成静态网页URL地址,但实质上用户访问的还是动态网页。

伪静态表面上看起来是静态内容(如 .html),但伪静态网页URL地址通过rewrite规则实现的URL地址重写,改写后的URL地址规范、美观,有利于搜索引擎抓取,提升用户访问体验。伪静态网页还是动态网页,所以在性能上,伪静态功能反而是降低了网站的性能。

伪静态网页作用:

由于搜索引擎无法正确读取带参数的动态网页内容,以致网页中很多具有丰富信息的页面无法被搜索引擎收录,因此就有了伪静态技术。

它的作用是把动态网页URL改写成静态网页的URL,虽然消除了动态网页中的参数,但是并不需要生成任何网页,仅仅是改变了网页地址路径。

这样做的主要目的有两个,一是让搜索引擎收录网站内容,让更多的用户访问企业网站内容;而是提升用户体验,动态地址特特殊符号等的URL看起来也不让如静态网页地址舒服。

伪静态网页的缺点:

伪静态网页并不能提升网站的访问效率,从理论上来说还会降低网站的性能,没有动态转静态网页的效率高,不过还是一个不错的功能;

现在很多大型网站都采用了动态网页生成静态网页的技术,用于消除动态网页中的参数,是搜索引擎收录更多的内容,达到优化网站的效果。但是,有些更新频率很快的业务并不适合动态转静态;

此外,如果将动态转静态有很大难度,也可以考虑将其设置为伪静态;

伪静态网页小结:

利用rewrite技术奖动态网页伪装成静态网页(URL地址改写);

便于搜索引擎搜录,提升用户访问量及用户体验;

访问性能没有提升,并且转换成伪静态会消耗资源,因此性能反而会下降;

尽可能地将动态网页 转换成真正的静态页面;

并发量不是很大或更新过于频繁时,用rewrite实现伪静态也是不错的;

伪静态网页的实现过程,一般有产品运营提出需求、开发和运维共同实现;

web服务,webservice服务

  1. 特点:网页一旦发布,再次改动网页内容的几率很低,新闻业务内容的静态化相对比较简单

DNS几大功能

域名解析功能;

设置CNAME别名记录,常用于CDN加速服务商;

设置MX邮件记录;

设置PTR记录,反向解析,即把IP解析为对应域名;

美高梅手机登录网站 12

DNS树状结构图举例

空行

最后一个请求头部信息之后是一个空行,发送回车符和换行符,通知web服务器空行以下不会有请求头部的信息了。

HTTP协议原理

HTTP协议工作流程

1,Client访问地址 www.xxx.com;

2,本机解析www.xxx.com并取得IP;

3,Client将端口号从访问地址中解析出来;

4,Client通过IP和Port与Server间建立一条TCP连接;

5,Client发送请求报文;

#到达HTTP服务后,请求后端集群结点的流程是Nginx--->FastCGI--->PHP--->DataBase;

6,Server发送响应报文;

7,关闭HTTP连接,关闭TCP连接;

生产web架构优化

由于静态网页程序在客户端解析,大大降低了服务端的访问压力,因此解析效率更高,在实际高并发网站架构中,可以考虑把用户请求的数据解析后存成静态文件存放于磁盘中或放于内存中来降低动态服务器的压力,节约企业成本,提示用户体验。

老男孩Linux运维读书笔记

其他

blog、bbs、sns、微博社区业务、电商(淘宝、京东)

异步方式,消息中间件、消息队列。

用户访问网站基本流程

1,客户端输入网站地址;

2,本地缓存或hosts,或者localDNS,或者DNS服务器解析域名IP;

3,将解析域名的IP发送给客户端;

4,本地将域名和IP对应解析缓存起来,以便下次快速响应,不过会有一个TTL过期时间;

5,客户端请求IP对应网站;

6,服务器响应客户端;

美高梅手机登录网站 13

访问Web网站基本流程

dig trace www.baidu.com

美高梅手机登录网站 14

DNS解析流程

请求报文主体

请求报文主体中包括了要发送给web服务器的数据信息。请求报文主体不会应用于HTTP的GET命令方法,而是应用于POST方法。POST方法适用于需要客户填写表单的场合。

HTTP协议简介

HyperText Transfer Portocol,超文本传输协议,是互联网中最常用的一种网络协议;

HTTP有许多应用,但最流行的是WWW应用(Web应用);

HTTP协议的WWW服务默认端口是80,另一个加密的WWW服务https默认端口是443;

有关静态网页架构思想

高并发高访问量的场景,做架构优化,关键的环节,就是把动态网页转成静态网页,不直接请求数据库和动态服务器,并且可以把静态内容推送到前端缓存中提供服务,可以提升用户体验,节约服务器和维护成本。

生产Web框架优化实战方案

由于静态网页程序在客户端解析,大大降低了服务器端的访问压力,因此在实际高并发的网站架构中,可以考虑把用户其你去的数据解析后存成静态文件放于磁盘中或内存中,从而降低动态服务器的压力,节约企业成本,提升用户体验。

门户新闻业务

新闻网站的特点是一旦发布完成,几乎不会再改动网页内容。因此,新闻业务内容的静态化相对比较简单。

1,程序要支持发布的内容动态转成静态的功能;

2,运营编辑人员发布新闻网页后,后台程序立刻将动态网页生成静态文件;

3,运维人员通过发布或事件触发把运营编辑生成的静态网页发布到事先搭建好的公司缓存集群服务器上,或者把静态内容同步到购买的CDN服务节点上,在提供给用户访问;

视频网站业务

视频网站和新闻网站类似,特点都是一旦发布完成,几乎不会改动网页内容。

用户在上传视频时,需要经历转码----> 审核的过程;

此外,一些热点视频也可能会被提前推送同步到CDN的核心节点或全国所有CDN服务器节点,这样用户访问才会更快;

Blog、BBS、微博、电商(淘宝京东)

这几类业务由动态转静态比较困难,因为用户发布内容后,可能会随时更新并查看,对于这种情况,一般会通过异步的方式来处理,例如通过消息中间间技术加上NoSQL集群技术来实现转换。

HTTP报文

HTTP报文中有很多行内容,不同行的字段都是一些ASCII码串,各个字段的长度也是不同的。HTTP报文有两种,一种是从web客户端往web服务器的HTTP报文,称为请求报文(Request Message)。另外一种是 从web服务器发往web客户端的报文,称为响应报文(Response Message),HTTP请求和相应报文的格式类似。

重点回顾:

1,用户访问网站基本流程;

2,DNS系统解析原理;

3,HTTP协议通信原理,包括HTTP协议、请求报文、响应报文、状态码等;

4,动态、静态概念特点及伪静态技术;

5,动态转静态Web优化方案;

6,IP、PV、UV的概念和区别;

7,并发的概念理解;

8,了解常用的WWW服务软件特点,如Apache、Nginx、IIS、Tomcat、PHP等;

动态网页资源

所谓的动态网页与静态网页是相对而言的。并且一般在动态网页网址中会有标志性符号 “?”“&”,此外,大多数情况下后端都需要有数据库支持。

动态网页资源特点:

1,网页后缀名常见为: .asp、.php,.py、.cgi等;

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

3,采用动态网页技术可以实现更多的功能,如用户注册、用户登录、在线调查、用户管理、文字发表修改删除等;

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

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

#程序在服务器端解析,在此过程中,会消耗大量的CPU和内存、I/O资源,并且还要读取数据库,因此访问效率远不如静态网页。

在服务器端解析动态程序的服务常见的有PHP引擎、Java容器(Tomcat、Resin)等。

有关动态网页的架构思想

一般来说,静态网页的性能效率是动态网页的几十倍,且动态网站效率很差,并发能力也低。在高并发场景中,应尽可能转换成静态网页提供服务。动态转静态几乎是所有高并发网站必备的架构方案思路,也是高级架构师的职责所在。

此外,动态转静态也要根据业务需求来设计。

网站流量度量术语


本文由分分快三计划发布,转载请注明来源

关键词: LNMP