首页  >  文章  >  后端开发  >  PHP大数据大并发大流量详解

PHP大数据大并发大流量详解

小云云
小云云原创
2018-03-10 13:48:093131浏览


什么是大型网站? 大型网站要满足一下标准.

pv(page views)值, 页面浏览量,一个网站的所有页面,在24小时内被浏览的总的次数, 一般说 到千万.
uv(unique visitor) 独立访客: 一个网站的24小时内,有多少个用户来访问该网站, 一般说 到10万

ip值,一个网站的24小时内,有多少个ip访问。在不考虑内网和局域网的情况下,uv 等于 ip, 如果考虑的话,uv值略大于        ip,一般说 到10万

大型网站带来的问题

大并发

            概述: 在同一个时间点,有大量的客户来访问我们的网站,如果访问量过大,就可能造成网站瘫痪。

     大流量

            概述: 当网站大后,有大量的图片,视频,flash, 这样就会对流量要求高,需要更多更大的带宽.(花钱)

大存储

            概述:你的数据量会成海量的数据,如果我们的数据放入一张表,是无法应对的。可能对数据保存和查询出现问题

大型网站的常见处理方案

大并发的处理方法(对架构分层+负载均衡+集群)

            

大流量的处理方案

    网站图片尽量使用背景图。
    可以启用apache自带的数据压缩机制(gzip ,deflate) .

    使用cdn(content delivery network) 内容分发网络

            

            网站图片,在不影响观看的情况下,尽量使用jpg(分辨率底),不要使用高分辨率。

            

        大存储的常见解决方案

            使用缓存技术(内存缓存[redis,mysql数据库(memory引擎)],页面缓存(页面静态化)

            优化数据库

                表的设计要合理(满足3NF)  原子性,唯一性,拆分表
             添加索引(主键索引|全文索引|唯一索引|普通索引|空间索引)
         优化sql语句
         分表( 水平分表,垂直分表),分区
         读写分离

         优化my.ini配置
        软件硬件应当升级

       页面静态化

           使用php自己的ob缓存技术实现
           使用模板替换技术实现 

               主流的mvc框架(tp,yii,laravel)模板引擎一般都自带页面静态化 

               使用ob缓存     

                 PHP程序在运行过程中,存在一个程序缓存,该缓存必须存在,程序员无法控制。
                PHP程序运行过程中,我们可以开启ob缓存(在php5.2前,默认ob是关闭的,在后面版本默认是打开的),                  打开ob缓存的方法有两个 
                    a) 修改php.ini output_buffering = 4096, 
                    b) 还有就是直接在php文件中打开 ob_start();
                 PHP程序运行过程中,如果打开了ob缓存,那么echo 数据会被放入到ob中,header信息都是放入程序缓存
                当php文件执行完毕后,就会把ob缓存的数据刷新到程序缓存,然后apache封包,返回给浏览器。

                         

相关推荐:

PHP大数据加法

php使用Redis实现防止大并发下二次写入的方法

Linux修改Mysql最大并发连接数

以上是PHP大数据大并发大流量详解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn