将您的网站加载速度推向极限的先进技术
已发表: 2018-12-26速度的需要。 尽管报价通常与汽车相关,但网络也需要速度。 用户不仅要求网站加载速度快,而且许多用户报告说,当网站加载时间超过 3 秒时,他们开始感到恼火。
如果您的网站对用户的输入做出反应超过 8 秒,他们将放弃该网站,永远不会返回。 你将永远失去一个客户。
除了用户的用户体验之外,还有另一个访问者要求您的网站速度快——谷歌。 网站加载速度实际上是一个排名因素,与加载速度快的网站相比,加载速度不快的网站会在自然排名中受到惩罚。
但是您可能已经知道所有这些,实际上,即使在此站点上,也有数百篇有关使网站加载更快的文章。
但是,我们将超越所有这些。 我们现在要提高档次并提及一些先进的技术,这些技术将使您的网站加载速度更上一层楼。
1. 将您的网站托管在虚拟专用服务器(或更好)上
在 VPS(或虚拟专用服务器)上托管您的网站是您需要做的第一件也是最简单的事情,以使您的网站加载更快。 它不是很先进,也不是特别先进,但它仍然是必不可少的。
这有多种原因。
首先,大多数托管帐户都专注于为提供服务的公司带来利润,而不是托管在它们上的网站的性能。
托管的概念是您使用一些物理服务器并在其上放置数百甚至数千个网站以赚取利润。
让我们运行一些数字来解释这一点。
假设托管公司的物理服务器每月花费 1000 美元,而共享托管帐户的价格为每月 5 美元。
托管服务器需要托管 200 个网站($5 * 200 = $1000)才能达到收支平衡。 它需要 240 个站点,它在该服务器上每月赚取 200 美元的利润。
因此,共享主机帐户正在与 240 个其他网站共享服务器资源,而您的网站正在与所有这些网站竞争资源。
由于您无法控制这些网站中的任何一个,因此您的网站运行缓慢很可能不是您自己的过错,而是因为有其他网站在使用该服务器。
虽然上面的数字可能不准确,但其背后的概念是真实的。
虚拟专用服务器非常不同。 它的成本通常是共享托管服务器的 5 到 10 倍,因此托管公司需要更少的“客户”来证明该服务器的合理性并从中获利。
但是对于一家通过他们的网站开展业务的公司来说,你为什么还要费心每个月只赚几美元呢? 每月支付 4.95 美元与每月支付 29.95 美元之间的底线有什么区别? 它不会破坏银行是吗?
此外,VPS 帐户通常为每个帐户分配专用资源。 本质上,服务器上的内存和 CPU 时间等这些资源是为您的网站和您的网站单独保留的。
这意味着没有其他帐户可以使用您帐户的资源,即使您的网站目前没有任何用户并且没有使用这些资源。
这使得每个帐户通常可以更快地执行,并且托管在 VPS 上的网站通常比托管在共享帐户上的网站快几秒钟。
您会发现许多服务通过其虚拟专用服务器帐户提供免费升级,例如与 CDN 集成或通过第三方(如Incapsula )和对 HTTP2 的支持的高级网站安全服务,作为托管帐户的一部分或少量附加费用——所有这些都确保您的网站顺利运行。
更重要的是,使用 VPS,客户可以完全访问运行其网站的服务器软件的配置,并对其帐户专用的这些资源拥有完全的管理权限。
因此,首先,如果您有预算,请将您的共享主机帐户升级到虚拟专用服务器,甚至是专用服务器。
这对于我们将在下面提到的下一个技术很重要,因为它们中的大多数都需要访问 WHM 或对您的服务器进行管理访问。
2. 将您的 MySQL 数据库升级到最新版本或 MariaDB
如果您正在运行 WordPress 或其他 CMS 或数据库驱动的网站,那么您的网站很可能使用 MySQL 作为其数据库后端。
这是因为 MySQL 默认预装在大多数主机帐户上。
但是,大多数人并不知道大多数帐户上安装的默认 MySQL 版本已经很老了,有时甚至已经过时了。 与其他针对速度进行了优化的技术相比,它也不是很快。
而且大多数人还不知道的是,有一个等效的数据库引擎可以轻松取代 MySQL,同时还可以提高网站速度。
这是MariaDB 数据库引擎。 它实际上是由 MySQL 的原始开发人员创建的,因此您可以想象他们想让它 100% 可与 MySQL 交换。
事实上,将这种快速数据库引擎用于其基础架构的著名公司包括 Wikipedia、Google 甚至 WordPress.com!
即使您不升级到 MariaDB,也要升级到最新版本的 MySQL。 该软件的最新版本总是比旧版本更快、更高效。
升级当然不适合胆小的人,这是一个固有的风险过程,你需要有备份,以防万一事情不顺利。
它还要求您具有对服务器或 VPS 的 ROOT 访问权限,这就是我们提到您需要升级到 VPS 或专用服务器的原因。
为此,(在您进行完整的 VM 备份之后),登录 WHM。
转到首页>>软件>> MySQL/MariaDB 升级。
然后有一个简单的向导,您可以按照它来自动执行升级。
3.升级到最新版本的PHP7
就像我们之前提到的,您会发现大多数主机帐户的默认 PHP 设置版本并不是最快的。
例如,如果您的主机默认使用 PHP5.6 版本,那么这已经有几年(2017 年 1 月)不再受到积极支持。
自 2017 年 12 月以来,甚至对 7.0 版的支持也已终止,当前支持的版本为 7.2 版。
然而,由于遗留原因,大多数托管帐户仍将默认使用这些旧版本的 PHP——但实际上,PHP7.2 是一个非常快的引擎!
任何好的托管服务都应该允许您将 7.2 用作您网站的引擎。 如果它不适合您,可能是时候将您的服务切换到更好的服务了!
当然,请务必检查您网站运行的软件是否与此版本的 PHP 兼容。 如果升级时出现问题,您需要与特定供应商联系,以确保有修复或解决方法,或者可能有您需要更新到的版本。
4. 为 PHP 设置 OpCache
您可能已经一遍又一遍地阅读,您需要为您的网站实现浏览器缓存,例如按照此处的文章,并实现一个文件缓存机制,该机制实际上会创建您网站的副本,以便他们可以快速获得服务。
但是您可能不知道第三级缓存,但它可能是能够将您的服务器响应时间缩短到不到半秒的缓存。
这是字节码缓存,旨在加快 PHP 的实际执行速度。 PHP 的工作方式是将脚本编译成执行的操作码。
每次执行 PHP 代码时都会生成操作码。 这意味着如果 PHP 代码不改变,生成操作码是浪费时间和资源。
字节码缓存通过将操作码存储在内存中来节省时间,一旦需要执行 PHP,就会从内存中获取编译后的代码并立即执行。
这使得 PHP 代码的执行速度快如闪电。 将此与 VPS 相结合,在升级的数据库服务器上运行以及 WordPress 站点或 CMS 的文件级缓存,服务器响应时间通常在 200 到 400 毫秒之间。
更重要的是,这种服务器响应时间是一种衡量标准,通常被认为是谷歌用作排名因素 (TTFB) 的衡量标准,因此提高此响应时间是一件大事。
有多种方法可以启用此功能,我们发现为我们的设置执行此操作的最佳方法是在包含 OpCache 的 EasyApache4 下启用配置,然后相应地设置设置。
5. 选择 Nginx 而不是 Apache
我们的最终建议有点激进,需要进行大量更改,但鉴于我们正在讨论高级技术,我们不能忽略这一点。
几十年来,Apache 一直是托管网站的标准 Web 服务器,但多年来它的受欢迎程度一直在下降,主要是因为一个强大的竞争对手——Nginx。
该 Web 服务器的受欢迎程度一直在稳步增长,主要是因为它能够胜过 Apache,尤其是对于非常繁忙的站点,这些站点需要能够优化其基础架构的各个方面。 Nginx 在并发连接方面通常优于 Apache,这意味着它能够同时服务于比 Apache 更多的用户。
虽然 Nginx 在使用服务器的网站总数方面并没有超越 Apache,但在 Web 上的前 10,000 个网站中,它的表现明显优于 Apache,Nginx 为超过 60% 的网站提供支持,而 Apache 托管的网站少于20%。
考虑到 Nginx 在并发连接方面如何能够胜过 Apache,这很有意义,前 10,000 个站点通常每分钟提供数百甚至数千个服务,难怪 Nginx 正在接管.
因此,如果您的站点需要高效地进行多个连接,Nginx 是合乎逻辑的结论。
当然,如果您的基础设施已经建立,从 Apache 切换到 Nginx 并不适合胆小的人。
你需要
- 验证您的所有软件是否与 Nginx 完全兼容
- 安装 Nginx 和您的站点需要的任何其他模块
- 将 Apache 的所有配置和调优切换到 Nginx(它们的配置方式不同)
- 实施将服务器推向极限所需的任何性能调整
在 CPanel 和 WHM 上设置 Nginx 的最简单方法是使用名为 Engintron 的模块。
包起来
上述技术不适合胆小的人。 他们需要仔细考虑,并且需要制定一个完整的过程,以确保您已经测试了您的站点,以解决通过执行如此剧烈的更改可能出现的任何问题。 但是,一旦您实施了上述大部分更改,您就可以轻松地将网站加载时间缩短到 2 秒以下。 当你这样做时,你会在几个月内看到好处,更好的跳出率,更好的排名,最重要的是更快乐的客户!