详解php处理大并发大流量大存储

admin3年前PHP教程33
一、判断大型网站的标准

1、pv(page views)网页的浏览量

概念 一个网站所有的页面,在24小时内被访问的总的次数。千万级别,百万级别,

2、uv值(unique vistor)独立访客

概念:一个网站,在24小时内,有多少个用户来访问我们的网站。达到10万

3、独立ip,重点内容

概念:一个网站,在24小时内,有多少个ip来访问我们的网站。
uv值约等于独立ip.如果要考虑局域网,uv值略大于独立ip

二、大型网站带来的一些问题

1、大的并发
并发量:在同一时间点(1秒内),有多少个用户同时访问我们的网站。对同一个网址,同时刷新浏览器。达到500,就非常大了。
假如并发量是500,pv值是多少。500*3600*10

2、大流量
网站需要的大的带宽。10G.

3、大的存储
网站中的数据库,表的容量成海量趋势,GT级别,如何快速的查找出想要的数据。

三、大并发的解决方案

1、负载均衡器
硬件:f5-bigip 性能比较好,立竿见影,价格昂贵,一般适合于大型网站公司,网游公司。

软件:
lvs(linux virtual server)linux虚拟服务,加入到linux的内核中。
nginx:可以做web服务器(apache),还可以做负载均衡。

2、负载均衡实现的方式

主要有:
轮询技术:客户端请求服务器轮流转发。
ip哈希:同一ip地址的客户端,始终请求同一台服务器。
最少连接:把请求转发给最空闲的服务器。

3、集群

主要是解决计算机单点故障,在一个集群中的计算机,只有一台计算机工作,其他计算机处于休眠状态,监视正在工作的计算机,当正在工作的计算机出现问题,则休眠的计算机立刻接替工作。

四、大流量解决方案

1、防止我们的网站资源被盗链

可以采用一些非技术手段防止被盗链,在图片上添加水印

2、减少http请求

主要手段就是合并js文件,css文件,背景图片的文件。将浏览器需要的样式文件或者js文件,合并成一个样式文件或js文件。比如通过背景图片举个例子。

3、启用压缩

减少数据传输的数据量,常见的压缩格式是:gzip,deflate.

4、通过浏览器缓存数据内容

在网站中有一些资源,比如js文件,css文件,一些图片文件,更新的频率比较少。通过个设置http的cache-control expires属性来进行设置缓存,可以设置缓存的文件类型,设置缓存的缓存周期,

5、可以把比较占用流量的一些资源,单独组建一个服务器

比如图片服务器,视频服务器等。

五、大存储解决方案

1、缓存技术

通过缓存技术,达到不查询数据库或者少查询数据库的目的。
计算机的访问速度,内存》硬盘文件》数据库
缓存技术主要有:
磁盘缓存(页面静态化),把一个查询数据库的页面变成一个不查询数据库的页面
内存缓存:把经常查询的数据保存到内存里面,下次查询数据时候直接在 内存里面查询。
(memcache/redis/mysql的memory引擎)

2、在设计表的时候,要满足3范式

第一范式是:原子性,字段不能再分割了。只要是关系型数据库就自动满足第一范式:
数据库的分类:
关系型数据库:有行和 列的概念,二维表格。常见的关系型数据库:mysql,sql server,oracle,db2,
非关系型数据库(nosql)面向集合和 文档的,没有行和列的概念常见的有redis/mongodb等。
第二范式:在一个表中不能有完全相同的记录。可以通过设置一个主键。
第三范式:表中的字段不能冗余存储。

3、要给表添加适当的索引

索引非常重要的,可以提高查询速度。
常见索引有:主键索引,唯一索引,普通索引,全文索引,

4、要创建适当的存储过程,函数,触发器等

5、读写分离(主从服务器)

6、分表技术(垂直分割和水平分割)

7、分区技术

把一个表的数据内容,在不同的 区域存储,

8、升级mysql服务器(添加配置:加大内容,64位)

9、要对sql语句进行调优

select * from tablename 该语句不要使用,要按需查询。需要哪个字段的数据,就查询哪个字段的数据。

10、对配置文件进行优化配置 

比如配置mysql数据库的并发量:

以上就是详解php处理大并发、大流量、大存储的详细内容,更多关于php的资料请关注其它相关文章!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

图文详解laravel多对多关联模型

关联模型(多对多)多对多关系(抽象)例:一篇文章可能有多个关键词,一个关键词可能被多个文章使用。 关键词表:字段id主键字段keyword关键词文章与关键词的关系表: 字段id主键----字...

怎么判断江西GPU服务器哪个好

判断GPU服务器哪个好,需要考虑以下几个因素:GPU类型和数量:选择适合您工作负载需求的GPU类型和数量。例如,如果您需要进行深度学习任务,则NVIDIATeslaV100或A100GPU可能是最佳选...

便宜好用的美国大带宽服务器怎么买

便宜好用的美国大带宽服务器怎么买?购买便宜好用的美国大带宽服务器通常需要以下几个步骤:确定购买目的:首先,您需要确定您购买服务器的目的是什么。例如,是用于网站托管、视频流媒体、游戏服务器还是其他用途。...

php curl返回错误码60如何解决

今天有用户调用一个curl方法时,遇到如下的错误,查找了一些资料终于解决了。解决方法记录一下,留着自己以后自已查阅用。错误代码cURL error 60: SSL certificate proble...

php中创建字符串的变量实例讲解

在编程中经常会设置一个变量,这样就可以对一些程序进行反复的时候,想要改动一些结果,对变量的值进行修改就可以了。为了让大家能够对变量有一个初步的认识,本篇先就变量的概念、使用注意带来介绍,然后以创建字符...

php去掉一维数组的键值的实例方法

 在 PHP 中,数组的每个元素都是由键值对(key-value)组成,通过元素的键名来访问对应键的值。提示:“索引”和“键名”指的是同一样东...