• 【性能】web提升性能的小总结


    1. 异步加载js文件,判断文件是否已加载,不重复加载

                if (typeof echarts === 'undefined') {
                    console.log('异步加载echarts');
                    $.getScript(_relyScripts, function () {
                        _this.showWhLatencyData();
                    });                
                }else {
                    console.log('已加载echarts');
                    _this.showWhLatencyData();
                }

    2. 合并文件

    合并css文件及图片;

    切割js文件,分清类别:1)初始加载,  2)按需加载

    3. 服务器端 , 配置以apache为例

    1)启用gzip 压缩传输文件

    开启模块:

    LoadModule deflate_module modules/mod_deflate.so

    LoadModule headers_module modules/mod_headers.so

     备注:deflate模块采用的是哈夫曼编码

    服务器配置增加:

    <IfModule mod_deflate.c>
    SetOutputFilter DEFLATE
    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:pdf|doc|avi|mov|mp3|rm)$ no-gzip dont-vary
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css
    AddOutputFilterByType DEFLATE application/x-java script
    <IfModule mod_headers.c>
    Header append Vary User-Agent
    
    <FilesMatch ".(html|htm)$">
    Header set Cache-Control "max-age=86400"
    </FilesMatch>
    
    <FilesMatch ".(js|css|txt)$">
    Header set Cache-Control "max-age=259200"
    </FilesMatch>
    
    <FilesMatch ".(jpg|jpeg|png|gif|swf)$">
    Header set Cache-Control "max-age=259200"
    </FilesMatch>
    
    <FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$">
    Header unset Cache-Control
    </FilesMatch>
    
    
    </IfModule>
    </IfModule>

    2) 加入失效时间,没验证成功

    开启模块:

    LoadModule expires_module modules/mod_expires.so

    服务器配置:

    <IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault A600
    ExpiresByType image/x-icon "access plus 2 month"
    ExpiresByType application/x-javascript "now plus 2 day"
    ExpiresByType text/css "now plus 2 day"
    ExpiresByType image/gif "access plus 2 month"
    ExpiresByType image/png "access plus 2 month"
    ExpiresByType image/jpeg "access plus 2 month"
    ExpiresByType text/plain "access plus 2 month"
    ExpiresByType application/x-shockwave-flash "access plus 2 month"
    ExpiresByType video/x-flv "access plus 2 month"
    ExpiresByType application/pdf "access plus 2 month"
    ExpiresByType text/html  "now plus 1 day"
    </IfModule>
    计划、执行、每天高效的活着学着
  • 相关阅读:
    Sharp Develop发布了1.0.3版本
    【历代Windows操作系统大观】(转)
    Matlab与vc混合编程中的问题,使用idl文件
    明天回湖北!今天要开始收拾烂摊子了
    MongoDB深究之ObjectId
    MVC设计模式
    ASP.NET验证控件详解
    C# 中的 LINQ 入门学习摘记
    15款在线科学计算器
    从底层了解ASP.NET架构
  • 原文地址:https://www.cnblogs.com/huxiaoyun90/p/4341419.html
Copyright © 2020-2023  润新知