zoukankan      html  css  js  c++  java
  • 高并发、大流量、大存储

    ①衡量网站的标准
    pv值(page views):页面浏览量
    uv值(unique visitor):独立访客
    ②三大建站问题
    1、高并发解决
    负载均衡器
    硬件:F5-BIGIP:立竿见影,效果非常好,价格昂贵
    软件:lvs(linux virtual server)集成到linux的内核里面了,nginx
    负载均衡器的策略:
    轮询技术:就是负载均衡把请求轮流转发给 web服务器。
    最少连接:负载均衡把请求转发给最空闲的web服务器。
    ip哈希: 同一地址的客户端始终请求同一台 web服务器。
    2、大流量(带宽)的解决方案
    配置压缩
    开启apache deflate 压缩模块
    虚拟主机里面添加如下的配置
    <ifmodule mod_deflate.c>
    DeflateCompressionLevel 6 #压缩级别为6,可选1-9,推荐为6
    AddOutputFilterByType DEFLATE text/plain #压缩文本文件
    AddOutputFilterByType DEFLATE text/html #压缩html文件
    AddOutputFilterByType DEFLATE text/xml #压缩xml文件
    </ifmodule>
    减少http的请求
    合并js,css,背景图片等让浏览器只请求一次
    能耗的单独部署服务器
    花钱买带宽。
    3、大存储解决方案
    使用缓存技术:
    1、页面静态化技术(磁盘缓存)
    目的:做到,少查或不查数据库
    原理:将动态脚本转换成静态的html 页面返回
    2、内存缓存
    memcache和redis以及mysql里面的memory引擎
    对mysql进行优化
    ③页面静态化技术:
    原理:把一个动态的页面变成一个静态页面,后续用户直接访问静态页面。
    1、真静态
    把一个动态的页面,转成一个静态的页面,即.html文件
    实现方式:使用ob缓存技术来实现
    真静态问题
    生成周期(filemtime($filename))
    建文件的时间戳+生命周期>当前的时间戳
    静态化在smarty中使用
    优缺点说明:
    优点: 1. 速度快 2. 安全性高 3. 利于seo
    缺点:就是占有磁盘空间., 如果过大,对磁盘响应速度有影响
    2、伪静态
    伪静态是从url地址上看是一个静态页面,但是实际上还是对应一个动态页面
    实现方式:使用web服务器的rewrite机制(url的重写机制)来实现。
    实现重写:
    开启apache rewrite模块
    .htaccess配置
    RewriteEngine on 重写引擎开关,一旦开启,所有的重写条件都生效。
    RewriteCond 重写条件,当达到什么条件时,完成重写。
    RewriteRule :定义重写规则,哪个地址应该被重写到哪个目标地址。
    ④ob缓存的介绍
    1、程序缓存(编程语言自带)
    缓存的数据是,返回给浏览器的数据
    2、ob缓存(output_buffering:输出缓存)
    输出缓存先于程序缓存,可以自由关闭
    开启ob
    方式一:直接在页面中执行ob_start() 函数。
    方式二:在php.ini文件中开启
    ob函数
    ob_start()开启 ob缓存,只针对当前页面有效。
    ob_clean();清空ob缓存里面的数据
    ob_get_contents();获取ob缓存里面的数据内容。
    ob_end_clean();清空ob缓存,并关闭ob缓存。
    ob_flush();把ob缓存里面的数据,给刷新(移动)到程序缓存,并不关闭ob缓存。
    ob_end_flush();把ob缓存里面的数据,刷新(移动)到程序缓存,并关闭ob缓存,。
    常用的是:
    ob_start() ob_get_contents() ob_clean()
    $content = ob_get_contents();
    file_put_contents(‘index.html’,$content);

  • 相关阅读:
    《jQuery源码解析》读书笔记(第一章:总体架构)
    无线开发学习笔记
    无线开发知识
    underscore源码了解
    Git 速查手册
    Jetpack Compose之隐藏Scaffold的BottomNavigation
    一种封装Retrofit的方法,可以自动解析Gson,回避Method return type must not include a type variable or wildcard: retrofit2.Call<T>的问题
    整理之Java容器
    整理之Fragment
    整理之BroadcaseReceiver
  • 原文地址:https://www.cnblogs.com/zc123/p/5224689.html
Copyright © 2011-2022 走看看