V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
wotaijian
V2EX  ›  云计算

网站每个页面要等待 3-5 秒加载,咋回事

  •  
  •   wotaijian · 2018-09-07 08:27:49 +08:00 · 9040 次点击
    这是一个创建于 2298 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本人设计师一只,耗尽本不发达的脑细胞来研究 wordpress 和购买安装国外主题终于架起了网站,也修改了不稳定的 googleapis,然儿,现在每个页面跳转都要好几秒,不知道是主机的问题还是程序问题。请大侠们指点下。lightbrand.cn

    53 条回复    2018-09-08 09:37:21 +08:00
    opengps
        1
    opengps  
       2018-09-07 08:35:27 +08:00
    首页有个 500 错误拖慢了所有访问
    opengps
        2
    opengps  
       2018-09-07 08:37:16 +08:00
    刷新后好像不是 500 了,你用的啥模版。
    总之你的问题出在首页的一个准备工作里,这一步执行时间长,他结束,其他的不能开始
    opengps
        3
    opengps  
       2018-09-07 08:40:40 +08:00
    换个描述,你的问题出现在一个后台逻辑里,这个逻辑是所有页面加载之前就得运行的,看了其他几个页面,也是相似的延迟。 你所有页面是不是继承了某个父类,或者说页面执行之前调用了同一个方法
    这个父类或者方法,会独占执行完才能开始执行页面输出代码
    Outhwaite
        4
    Outhwaite  
       2018-09-07 08:41:32 +08:00
    F12 打开谷歌浏览器,Network-看哪些文件加载比较费时
    sutra
        5
    sutra  
       2018-09-07 08:50:22 +08:00
    index.php (仅该文件,不包含上面的 css 和图片等资源文件) 就要等到 3-4 秒嘛。
    mclxly
        6
    mclxly  
       2018-09-07 08:50:54 +08:00
    1. 请求太多;
    2. 没有开启 gzip;
    3. 静态资源考虑上 CDN, 有个图片 1.2M ;

    delectate
        7
    delectate  
       2018-09-07 08:54:45 +08:00
    http://okami1.edge-themes.com/wp-content/plugins/contact-form-7/includes/css/styles.css
    http://ditu.google.cn/maps-api-v3/api/js/34/5/common.js

    这几个的 css/js 加载耗时过多。

    页面 js 体积过大,太多; css 也写得有点凌乱……粗略数了一下,有近 100 个文件,体积估计得有好几兆。得深度优化了。
    Quarter
        8
    Quarter  
       2018-09-07 08:55:07 +08:00 via iPhone
    cloudflare 上个 cdn 试试
    YiKeRowing
        9
    YiKeRowing  
       2018-09-07 09:00:00 +08:00
    肉身美帝测试,也得 5 秒以上,应该不是 css 国外镜像引用的原因吧
    fortunezhang
        10
    fortunezhang  
       2018-09-07 09:05:29 +08:00
    我感觉你的后台有些慢,请求的时候至少一秒在等待相应。 后端用的 python 吗? 还有你的静态资源挺多,加载耗时蛮大的,你可以试试把静态的文件换个域名加载,具体不清楚叫什么。
    foreverpdq
        11
    foreverpdq  
       2018-09-07 09:14:09 +08:00
    加了 sleep 函数,滑稽脸
    ihoey
        12
    ihoey  
       2018-09-07 09:17:19 +08:00 via Android
    wp 应该是有 Google 字体的,这个比较慢
    o0
        13
    o0  
       2018-09-07 09:18:23 +08:00
    感觉速度还行,lz 的界面是自己写的吗?好漂亮
    haimall
        14
    haimall  
       2018-09-07 09:21:49 +08:00
    网站加载 Waiting (TTFB) 时间过长的原因和解决办法
    justfindu
        15
    justfindu  
       2018-09-07 09:27:33 +08:00
    51 个 js , 9 个 css. 其中还有字体加载 404. 还有图片 404 . 这个慢可想而知的吧
    imdong
        16
    imdong  
       2018-09-07 09:31:29 +08:00   ❤️ 1
    ![]( )
    ![]( )
    仅加载 html 就用了三秒.
    建议优化代码逻辑,该静态就静态,该缓存就缓存。
    正常页面不应该加载这么久的。

    站内静态资源建议单独使用 CDN (全站也可。)
    有一张图片 1.2M 太大了,建议压缩或者缩放.
    最起码首页不要加载这么大的原图.
    有条件使用懒加载更好.

    这样的站,应该两秒内加载完毕的。
    你这光 html 就三秒显然不正常。
    其次还没用压缩,开启 gzip 压缩会稍微好一丢丢,想比目前来说意义不是最大的。

    ![]( )
    看这里,连接很快,等待很久,下载也很快。
    所以,等待是重点。
    Miary
        17
    Miary  
       2018-09-07 09:33:31 +08:00 via Android
    前面等待了 3 秒多,但是整个页面加载完成竟然花了 15 秒。。。
    98jiang
        18
    98jiang  
       2018-09-07 09:34:12 +08:00
    下载了 5.2M 有点大啊。。
    yhxx
        19
    yhxx  
       2018-09-07 09:54:08 +08:00
    来个联系方式?刚好明天周末了有空帮你处理一下
    Laz
        20
    Laz  
       2018-09-07 09:55:52 +08:00
    字体 404,接口 500,图片压缩下,js 和 css 也都可以压缩,然后 concat 模块合并静态资源文件,静态资源请求太多了。
    nu11001
        21
    nu11001  
       2018-09-07 10:01:40 +08:00   ❤️ 1
    数据库连接"localhost"改成"127.0.0.1"
    ghhardy
        22
    ghhardy  
       2018-09-07 10:02:42 +08:00 via Android
    我上 CSDN 就加载很慢甚至出不来,比 Stack Overflow 还费劲
    brofen
        23
    brofen  
       2018-09-07 10:06:30 +08:00
    1、模板页 pending 了 2 秒多。
    2、一个页面 80 多个请求,其中 js 文件 49 个,css 文件 15 个。这里的优化空间很大。一个是删冗余代码,一个是压缩。
    3、5mb 的内容加载了 12 秒,可以考虑挪一些静态资源文件到 cdn,免费的看看七牛云也行。
    4、有一张图片 1.2mb 。图片这里可以做懒加载,第 1 张显示时时候加载第 2 张,第 2 张显示时再加载第 3 张这样。
    Hayek
        24
    Hayek  
       2018-09-07 10:09:28 +08:00
    #16 楼说的很详细了。我觉得目前最主要的就是 html 加载都要 3s+,很不正常,应该做一下缓存或者伪静态。
    cncqw
        25
    cncqw  
       2018-09-07 10:12:01 +08:00
    难道没人发现他用的 Windows 服务器 + IIS ?
    cncqw
        26
    cncqw  
       2018-09-07 10:19:45 +08:00
    HTML 加载慢并不是缓存之类的原因,而是因为楼主使用了 woo commerce 插件,导致每请求一次首页都需要动态渲染一次,但是完全没发现楼主的站点哪里有用到购物功能,解决方案就是换 Linux 服务器,禁用不用的插件,移除当前页面没用的 js 库,像这种页面完全可以全部静态化,。
    wotaijian
        27
    wotaijian  
    OP
       2018-09-07 10:25:17 +08:00 via iPhone
    唉问题超多啊
    shiina
        28
    shiina  
       2018-09-07 10:30:04 +08:00
    有点乱啊,最简单的办法加个 cdn
    fuchaofather
        29
    fuchaofather  
       2018-09-07 10:30:14 +08:00
    做设计的网站弄的就是好看, 叫我弄左边菜单右边网页
    wotaijian
        30
    wotaijian  
    OP
       2018-09-07 10:39:10 +08:00 via iPhone
    安装了 super cache 插件,开启了压缩页面选项,
    停用了 woo commerce 插件,提速不明显。
    程序小白一个,还要好好研究一下,感谢各位帮忙找出问题,不一一回复,感激!
    jason19659
        31
    jason19659  
       2018-09-07 10:42:18 +08:00
    图片延时加载吧
    alvinbone88
        32
    alvinbone88  
       2018-09-07 10:44:17 +08:00
    在 wp-config.php 里加
    define('DISABLE_WP_CRON',true);
    然后自己想办法用系统自己的定时任务执行 wp-cron.php
    wotaijian
        33
    wotaijian  
    OP
       2018-09-07 10:52:40 +08:00
    @yhxx 好啊 微信 guheyu
    lygmqkl
        34
    lygmqkl  
       2018-09-07 11:26:32 +08:00
    1.2m 图片是大坑吧, 估计 vps ? 带宽太小了。
    然后还有 3 个 404
    34C
        35
    34C  
       2018-09-07 11:56:58 +08:00 via iPhone
    @cncqw 跟 Windows IIS 有啥关系?我用 IIS 每分钟一万多 PV 啥事没有。就他这程序换 Linux 一样卡。
    PythonAnswer
        36
    PythonAnswer  
       2018-09-07 12:01:50 +08:00 via iPhone
    楼上老板点赞,哈哈 我大 win 的反击
    sen2
        37
    sen2  
       2018-09-07 12:15:23 +08:00
    设计师弄得就是好看
    34C
        38
    34C  
       2018-09-07 12:22:10 +08:00
    @PythonAnswer 我是搞不懂都 2018 年了怎么还有人认为 IIS 性能不行,还扯什么插件 什么动态渲染,拜托作为一个网站,连点动态渲染都用不得 非要纯静态 那做个毛的网站,代码烂就是代码烂,还怪到 windows 和 IIS 上
    fishliu
        39
    fishliu  
       2018-09-07 12:49:14 +08:00
    @lygmqkl 是虚拟主机
    Ant01
        40
    Ant01  
       2018-09-07 13:34:06 +08:00
    优化方案前面都说了很多了。看你这么优秀,有没有兴趣你出设计,我出实现,一起做小程序。
    POPOEVER
        41
    POPOEVER  
       2018-09-07 13:56:11 +08:00   ❤️ 1
    办公地点好 fancy 啊,地标楼诶。。。

    哎,珍爱生命,远离 wordpress 😔

    - 如果是自己可以做主,面向国外市场用 wix,面向国内市场用 strikingly 吧。
    - 如果自己可以折腾的话(感觉你能弄 wp 算是蛮能折腾了)看看 hexo/gatsby + netlify/contentful 这些 JAM stack 吧
    - 如果只做国内市场的话,楼上说的小程序也是一个方案
    Pepsigold
        42
    Pepsigold  
       2018-09-07 14:20:33 +08:00
    @yhxx 老哥,discuz 怎么优化啊~
    首页 184 请求\加载完 4.7M\30 来秒\DOMC4.7
    alwayshere
        43
    alwayshere  
       2018-09-07 14:21:24 +08:00
    就几个页面你还用 WordPress,直接用纯静态 HTML 吧
    yhxx
        44
    yhxx  
       2018-09-07 14:48:12 +08:00
    @Pepsigold 其实基本的楼上都已经说的差不多了
    GZIP、压缩图片、静态资源 CDN、HTTP2 之类的
    具体看你的场景来优先处理掉收益最大的吧
    jmk92
        45
    jmk92  
       2018-09-07 15:09:11 +08:00
    我觉得,把你的站 down 下来,部署成静态,搞个域名挂上 CDN,可以和你站一毛一样,速度形成天壤之别
    cncqw
        46
    cncqw  
       2018-09-07 17:00:08 +08:00
    我也搞不懂都 2018 年怎么还有人用 Windows 当服务器,你是.NET 项目我无话可说,然而又是 PHP,当然,只要会配置效果也不一定差到哪里去,自己用的开心就好。反正每当这个时候,我对 phper 的认识又**加深**了一些
    580a388da131
        47
    580a388da131  
       2018-09-07 17:54:49 +08:00
    访问你的 RSS 都得两秒,所以你这就是后端的问题,不知道是虚拟主机还是 VPS,应该是数据库的坑。
    Windows 下 MySql 有个坑,Localhost 连接数据库会很慢。
    LudwigWS
        48
    LudwigWS  
       2018-09-07 18:54:44 +08:00
    不错,很酷炫
    sampeng
        49
    sampeng  
       2018-09-07 19:29:27 +08:00
    用 vps 来开 wordpress 的。就没有快的。。哪怕所有图片都走静态 cdn 之类的。。。总会莫名其妙慢的飞起。。。
    CloudnuY
        50
    CloudnuY  
       2018-09-07 20:36:27 +08:00


    这几个 js css 的加载时间有点恐怖
    zhs227
        51
    zhs227  
       2018-09-07 20:38:41 +08:00
    有一些莫名的插件会在后台请求时访问网络,如果凑巧服务器在墙内,请使用干净的 WordPress 测试。
    MonoLogueChi
        52
    MonoLogueChi  
       2018-09-07 23:04:29 +08:00 via Android
    精简 css 和 js,还有字体,公共资源尽量走 CDN。还有开启静态缓存。压缩图片,开启网页压缩。
    someonedeng
        53
    someonedeng  
       2018-09-08 09:37:21 +08:00
    页面过来之前,后台好像在跑些什么东西,过好几秒才有页面。

    静态资源这么多,cdn 吧。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1505 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 16:42 · PVG 00:42 · LAX 08:42 · JFK 11:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.