在宝塔面板使用 Memcached 减少 WordPress 网站上的数据库负载
Memcached 是驻留在您的托管服务器上的缓存机制之一。它主要处理有助于减少数据库负载导致快速加载网页的数…
Memcached 是驻留在您的托管服务器上的缓存机制之一。它主要处理有助于减少数据库负载导致快速加载网页的数据库查询。如果您的网站/商店严重依赖数据库查询,使用 Memcached 可以让 WordPress 网站显着提高性能并减少页面加载时间。
什么是内存缓存?
根据 Memcached 官方网站,Memcached 是一个:
“免费和开源、高性能、分布式内存对象缓存系统,本质上是通用的,但旨在通过减轻数据库负载来加速动态 Web 应用程序。
Memcached 是一种内存键值存储,用于存储来自数据库调用、API 调用或页面渲染结果的任意小块数据(字符串、对象)。”
简单来说,Memcached 是一个分布式临时对象缓存系统,它将字符串和对象存储在服务器的内存中,这些对象是处理数据库查询、API 调用或页面渲染产生的。用于此机制的服务器可以称为 Memcached 服务器。
Memcached 有什么用?
Memcached 用于通过减少数据库负载来加速动态 Web 应用程序,如电子商务商店、注册/登录网站等。它存储处理后的结果,因此每当访问者再次请求相同的查询时,Memcached 可以响应该查询而不是处理查询和回复。通过保持服务器不那么繁忙,您的访问者将体验到更快的加载时间和更好的用户体验。
Memcached 是如何工作的?
每次访问者/浏览器请求需要数据库处理和响应的服务器时,都会给服务器增加负载。Memcached 通过将数据对象存储在临时动态内存中来减少负载。它将数据保存在键值上并在将浏览器的请求发送到数据库之前检查其内存。如果存在缓存,它会在不涉及要处理的数据库的情况下回复请求。
如上所述,Memcached 是一个分布式内存对象缓存系统,由四个主要组件组成:
- 客户端软件:接收分布式可用 Memcached 服务器的列表。
- 基于客户端的哈希算法:根据键值选择服务器。
- 服务器软件:将数据(值)和键存储到内部哈希表中。
- 服务器算法:确定何时删除旧数据并重用内存。
上述组件允许 Memcached 存储和检索数据。每个项目包括一个:
- 键值
- 到期时间
- 原始数据
当一个项目被请求时,Memcached 会在回复请求之前验证它的过期时间以查看该项目是否仍然有效。如果缓存不存在,它会将请求发送到数据库以处理结果并将结果存储为一个项目。如果服务器内存不足,它会查找并替换过期的项目。如果它仍然需要任何信息,它会查找特定时间段内未请求的项目。通过这种方式,Memcached 将更多最近请求的信息保存在动态内存中。
高级 Memcached 工作如下:
- Memcached 检查请求的数据是否存储在缓存中。
- 两种可能的输出:– 数据存储在缓存中:在不中断数据库的情况下从 Memcached 返回请求的数据。– 数据不存储在缓存中:执行请求的查询,处理和检索数据,并将结果保存在内存中。
- 每当项目有更新或项目过期时,Memcached 都会更新其缓存并确保将新鲜内容传送到请求的客户端。
如何使用 Memcached?
使用 Memcached 涉及两个步骤。首先,它必须安装在您的托管服务器上,然后您的应用程序应该能够支持 Memcached。
在服务器上安装 Memcached
Memcached 不需要很多 CPU 资源。它完全依赖于内存。如果您有 8GB 内存的 Web 服务器,但操作系统和您的网站仅消耗 4GB,那么最好将剩余的内存分配给 Memcached 实例以增加其存储容量。 在此处阅读所有技术要求。
Memcached 适用于大多数基于 Linux 的服务器,安装 Memcached 只需两个 Linux 命令即可。通常,您应该从操作系统(Debian、Ubuntu 等)提供的软件包中安装 Memcached。操作系统将为您解决依赖关系并负责安全更新。
对于 Debian 或 Ubuntu 用户:
命令:apt-get install memcached
对于 Redhat/Fedora:
命令:yum install memcached
有关更多信息,请参阅您各自操作系统的文档。值得一提的是,最流行的反向代理服务器之一 Nginx 预装了 Memcached 模块,提供了最灵活的 Nginx Memcached 捆绑解决方案。
注:如果是宝塔用户,可以直接在软件商店中,进入 PHP 的设置选项,在【安装扩展】选项卡进入安装即可:
检查 Memcached 是否正在运行
有多种方法可以测试 Memcached 是否正在运行。其中之一是使用 Telnet,登录到您的服务器 SSH 终端并编写以下命令:
或
PS:如果本地服务器是您的 Memcached 服务器,则会运行上述命令。
如果上面的命令运行成功,你会得到以下结果:
否则会出现连接错误。
要检查一些基本统计信息,您可以使用以下命令:stats
你会得到如下内容:
要检查项目,请使用:stats items
结果:
要检查当前内存统计信息,请写入: stats slices
结果:
要退出连接类型输入 quit
并按回车键 enter。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!