网页加载时waiting(TTFB)时间过长的问题解决

2024-02-19 13:18

本文主要是介绍网页加载时waiting(TTFB)时间过长的问题解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在博客中查看:https://www.zjhuiwan.cn/info/20200414/4008280463194140.html

博客之前文章没有静态化之前是根据id查询的,每次点文章页面都要加载10几秒,体验确实差。

代码没查出问题,就简单的查询也不应该有问题吧。

经过一系列的网页优化后,还把所有文章静态化展示,静态化后确实快了,因为没有再去请求后端获取数据了,再慢我只能说是服务器带宽不给力啊。

没静态化之前是用id去查询文章的,因为其他地方有文章外链所以方法还保留着,今天通过这访问一篇文章的时候等了16秒左右... 正好得空,就经过一番查找然后解决了。

 

解决办法:

将项目数据库配置文件中数据库的链接地址修改为127.0.0.1

之前写的是直接用服务器ip连接的... 

 

因为本地连的远程库得写ip,部署一直没有改过。

测试了下:

用服务器ip连接数据库

Waiting为15s左右

158684464061640051127.png

 

用localhost连接

Waiting为1.5s左右

158684471233852070872.png

 

用127.0.0.1连接

Waiting为550ms左右

158684475613536028481.png

快了很多啊,不止查文章,后台我的一些功能用起来也快了好多啊。

 

那么为什么修改数据库链接为127.0.0.1 速度就会提升这么大呢?

mysql的配置问题。

由于MYSQL的安全策略的问题,对于每一个连接以及每一个操作,MYSQL都会check当前用户的主机名,so,当我们对数据库进行op的时候,MYSQL数据库服务器都会check一次主机名,这就导致了我们远端操作数据库的客户端出现几秒钟的等待状态,想要取消MYSQL数据库服务器的这种检查机制,就需要修改MYSQL配置文件

解决办法:   在my.cnf文件的[mysqld]后面添加:   skip-name-resolve 

 

扩展:localhost和127.0.0.1

127.0.0.1无需解析,localhost还要本地DNS解析,所有127.0.0.1会更快

 

    一、localhost和127.0.0.1的关系:

  localhost也叫local ,正确的解释是:本地服务器。

  127.0.0.1在Windows等系统的正确解释是:本机地址(本机服务器或回送地址)。

  TA们的解析都是通过本机的hosts文件来引导,之后Windows自动将localhost解析为127.0.0.1 。

  二、localhost和127.0.0.1的区别

  localhot(local)是不经网卡传输!这点很重要,它不受网络防火墙和网卡相关的的限制。

  127.0.0.1是通过网卡传输,依赖网卡,并受到网络防火墙和网卡相关的限制。

  一般设置程序时本地服务用localhost是最好的,localhost不会解析成IP,也不会占用网卡、网络资源。

  有时候用localhost可以,但用127.0.0.1就不可以的情况就是在于此。猜想localhost访问时,系统带的本机当前用户的权限去访问,而用IP(127.0.0.1)的时候,等于本机是通过网络再去访问本机,可能涉及到网络用户的权限。


​本机IP则指你连到网络上的IP地址,可以是内网地址,当然也可能是公网IP,这个就是你实际利用TCP/IP协议与网上计算机通信时使用的IP了。
host文件位置:
  修改host文件c://Windows/System32/drivers/etc/hosts

 

这篇关于网页加载时waiting(TTFB)时间过长的问题解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/724779

相关文章

网页解析 lxml 库--实战

lxml库使用流程 lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 XPath表达式提供了良好的支 持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 pip install lxml lxm| 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档,下面来介绍一下 lxml 库

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

如何解决线上平台抽佣高 线下门店客流少的痛点!

目前,许多传统零售店铺正遭遇客源下降的难题。尽管广告推广能带来一定的客流,但其费用昂贵。鉴于此,众多零售商纷纷选择加入像美团、饿了么和抖音这样的大型在线平台,但这些平台的高佣金率导致了利润的大幅缩水。在这样的市场环境下,商家之间的合作网络逐渐成为一种有效的解决方案,通过资源和客户基础的共享,实现共同的利益增长。 以最近在上海兴起的一个跨行业合作平台为例,该平台融合了环保消费积分系统,在短

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

缓存雪崩问题

缓存雪崩是缓存中大量key失效后当高并发到来时导致大量请求到数据库,瞬间耗尽数据库资源,导致数据库无法使用。 解决方案: 1、使用锁进行控制 2、对同一类型信息的key设置不同的过期时间 3、缓存预热 1. 什么是缓存雪崩 缓存雪崩是指在短时间内,大量缓存数据同时失效,导致所有请求直接涌向数据库,瞬间增加数据库的负载压力,可能导致数据库性能下降甚至崩溃。这种情况往往发生在缓存中大量 k

6.1.数据结构-c/c++堆详解下篇(堆排序,TopK问题)

上篇:6.1.数据结构-c/c++模拟实现堆上篇(向下,上调整算法,建堆,增删数据)-CSDN博客 本章重点 1.使用堆来完成堆排序 2.使用堆解决TopK问题 目录 一.堆排序 1.1 思路 1.2 代码 1.3 简单测试 二.TopK问题 2.1 思路(求最小): 2.2 C语言代码(手写堆) 2.3 C++代码(使用优先级队列 priority_queue)

Flutter 进阶:绘制加载动画

绘制加载动画:由小圆组成的大圆 1. 定义 LoadingScreen 类2. 实现 _LoadingScreenState 类3. 定义 LoadingPainter 类4. 总结 实现加载动画 我们需要定义两个类:LoadingScreen 和 LoadingPainter。LoadingScreen 负责控制动画的状态,而 LoadingPainter 则负责绘制动画。

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip