Memcached是什么

Memcached是一种高性能的分布式内存对象缓存系统。在动态应用,Memcached既能提高访问的速度,同时还减低了数据库的负载。DangaInteractive为提升LiveJournal.com的速度研发了Memcached。目前,LiveJournal.com每天已经在向一百万用户提供多达两千万次的页面访问。而这些,是由一个由Web服务器和数据库服务器组成的集群完成的。Memcached几乎完全放弃了任何数据都从数据库读取的方式,同时,它还缩短了用户查看页面的速度、更好的资源分配方式,以及Memcache失效时对数据库的访问速度。

WordPress支持Memcached吗

是的,WordPress默认支持ObjectCache,所以在WordPress实现Memcached就是使用Memcached把WordPress的ObjectCache写到内存中去,下次直接从内存中读取。相比直接从数据库去读取数据,或者从ObjectCache数据存到文件,然后从硬盘中读取,Memcached有很大的速度优势。

大家直接看下上面的对比图就能很清楚的看到,Memcached之后的缓存对象的命中率,可以看出命中率是非常高,接近97%,基本上可以保证所有数据都是从能内存中取,所以使用Memcached进行缓存是非常有效的。

配置服务器Memcached服务

1.服务器安装Memcached,官网上并未提供Memcached的Window平台安装包,我们可以下链接来下载,你需要根据自己的系统平台及需要的版本号点击对应的链接下载即可

32位系统1.2.5版本:https://www.svlik.com/wp-content/uploads/2017/12/memcached-1.2.5-win32-bin.zip

32位系统1.2.6版本:https://www.svlik.com/wp-content/uploads/2017/12/memcached-1.2.6-win32-bin.zip

32位系统1.4.4版本:https://www.svlik.com/wp-content/uploads/2017/12/memcached-win32-1.4.4-14.zip

64位系统1.4.4版本:https://www.svlik.com/wp-content/uploads/2017/12/memcached-win64-1.4.4-14.zip

32位系统1.4.5版本:https://www.svlik.com/wp-content/uploads/2017/12/memcached-1.4.5-x86.zip

64位系统1.4.5版本:https://www.svlik.com/wp-content/uploads/2017/12/memcached-1.4.5-amd64.zip

在1.4.5版本以前memcached可以作为一个服务安装,而在1.4.5及之后的版本删除了该功能。因此我们以下介绍两个不同版本1.4.4及1.4.5的不同安装方法:

memcached<1.4.5版本安装

1、解压下载的安装包到指定目录,可以是C盘也可以是D盘,本站以C盘根目录为例来说,其他盘符的同理操作。

2、在1.4.5版本以前memcached可以作为一个服务安装,使用管理员权限运行以下命令:

第一步:用win+r打开cmd输入cd c:/进入你解压Memcached所在的盘符

第二步:再输入cd memcached进入解压盘符的Memcached文件夹

第三步:再输入memcached.exe -d install安装Memcached为系统服务

第四步:启动Memcached服务输入memcached.exe -d start

打开服务器的任务管理器,如果看到Memcached.exe的进程,就说明服务已经启动,每次服务器启动都会自动启动。

同理如果需要停止或者卸载Memcached服务,需要执行以下2条命令

c:\memcached\memcached.exe -d stop //停止Memcached服务
c:\memcached\memcached.exe -d uninstall //卸载Memcached服务

memcached的配置项可以在注册表的如下路径来修改

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached

memcached使用的缓存内存配置修改ImagePath,执行以下命令

c:\memcached\memcached.exe -d runservice -m 512

此外我们还可以通过使用 "c:\memcached\memcached.exe -h" 命令查看更多的参数配置。

memcached >= 1.4.5 版本安装

memcached1.4.5 版本之后,memcached 不能作为服务来运行,需要使用任务计划中来开启一个普通的进程,在 window 启动时设置 memcached自动执行。

我们使用管理员身份执行以下命令将 memcached 添加来任务计划表中:

schtasks /create /sc onstart /tn memcached /tr "'c:\memcached\memcached.exe' -m 512"

删除 memcached 的任务计划可以执行以下命令:

schtasks /delete /tn memcached

到此windows服务器的Memcached配置已经完成,接下来就是配置Memcached的PHP扩展

配置服务器Memcached扩展

官方地址:http://pecl.php.net/package/memcache/3.0.8/windows

貌似目前memcache的windowsphp扩展只支持到php5.6版,对于php7.0版本的我都没有去研究测试,梵天网目前使用的也是php5.6版本,这里有个ts和nts版本的选择,大家可以在网站新建一个phpinfo.php文件,里面加入 <?php phpinfo(); ?>,用浏览器打开这个phpinfo.php,就可以看到网站的php相关信息,打开这个页面。用CTRL+F查找  Thread Safe,如下图

如果显示disabled 那么我们就选择nts版本,如果选择enabled 那么就选择ts版本

顺便普及下ts和nts的区别

Ts与nts的区别:

Windows版的PHP从版本5.2.1开始有Thread Safe和NoneThread Safe之分。

先从字面意思上理解,Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。

ISAPI执行php选择ts ,FastCGI执行php请选择nts

将下载好的php_memcache.dll到你php的ext目录下,如果你的服务器是多版本php,请一定选择好你网站的php版本的ext目录下。

再打开php下面PHP.ini进行配置,

在PHP的配置文件中:php.ini 的底部加上以下的代码:

[memcache]
extension = php_memcache.dll

4.重新启动IIS,然后查看一下phpinfo.php,如果有memcache这个项目,那么就恭喜安装成功!

接下来就是全文的重点,wordpress如何配置memcache缓存

wordpress配置memcache缓存

下载 WordPress Memcached 插件:http://wordpress.org/extend/plugins/memcached/

下载好这个object-cache.php 复制到 wp-content,注意不是 wp-content/plugins/。

WordPress 会自动检查在 wp-content 目录下是否有 object-cache.php 文件,如果有,直接调用它作为 WordPress 对象缓存机制。

到此整个教程结束,大楷的总结下 主要三大步

1. 服务器配置memcached服务 2.服务器安装memcached PHP扩展3.下载wordpressd的Memcached插件

Memcached还有其他的一些常用的命令如下

 -p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助 来源:https://www.svlik.com/994.html

如何配置Memcached高速缓存,加快wordpress的速度的更多相关文章

  1. centos7配置Memcached

    Memcached是一套分布式的高速缓存系统,用于提升网站访问速度,尤其对于一些大型的.需要频繁访问数据库的网站,访问速度提升效果十分显著. 1.安装memcached yum install mem ...

  2. [技术博客]使用CDN加快网站访问速度

    [技术博客]使用CDN加快网站访问速度 2s : most users are willing to wait 10s : the limit for keeping the user's atten ...

  3. 转载:Centos7 从零编译配置Memcached

    序言 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度. Memca ...

  4. [原创]Centos7 从零编译配置Memcached

    序言 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度. Memca ...

  5. 记——加快gradle 构建速度的经验

    Gradle作为一个新的构建系统,无疑在灵活,扩展,跨平台等各方面都表现得非常优秀,然而,它也有一点备受吐槽,就是速度慢.以下为本人使用gradle过程中,几次加快gradle构建速度的经验之谈. 本 ...

  6. 【设计经验】3、ISE中烧录QSPI Flash以及配置mcs文件的加载速度与传输位宽

    一.软件与硬件平台 软件平台: 操作系统:Windows 7 64-bit 开发套件:ISE14.7 硬件平台: FPGA型号:XC6SLX45-CSG324 QSPI Flash型号:W25Q128 ...

  7. 如何在Windows平台下安装配置Memcached

    Memcached是一个自由开源的,高性能,分布式内存对象缓存系统. Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一 ...

  8. 转: 加快Android编译速度

    转: http://timeszoro.xyz/2015/11/25/%E5%8A%A0%E5%BF%ABandroid%E7%BC%96%E8%AF%91%E9%80%9F%E5%BA%A6/ 加快 ...

  9. 在Windows平台下安装与配置Memcached及C#使用方法

    1.在Windows下安装Memcached 资料来源:http://www.jb51.net/article/30334.htm 在Windows平台下安装与配置Memcached的方法,Memca ...

随机推荐

  1. MySql配置主从模式 Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work.

    今天在学习MyCat环境搭建的时候,在配置MySql的主从模式,发现slave在配置完毕后,配置的内容全部正确的情况下,报错了? Last_IO_Error: Fatal error: The sla ...

  2. kafka的主题与消费

    同一个消费者组不能同时消费同一个分区的数据 不同分区可以消费同一组不同消费者 同一个消费者可以同时消费多个topicA的数据 Topic和consumer依赖zookeeper,producer不依赖

  3. 微信小程序动画之弹出菜单

    用微信小程序做了一个动画,效果如上图: 代码: js: Page({ data: { isPopping: false, animPlus: {}, animCollect: {}, animTran ...

  4. CocoPods原理

    CocoaPods 的原理是将所有的依赖库都放到另一个名为Pods的项目中, 然而让住项目依赖Pods项目, 这样,源码管理工作任务从主项目移到了Pods项目中. 1.Pods项目最终会编译成一个名为 ...

  5. DevOps 工程师成长日记系列一:必备知识与技能组合

    原文地址:https://medium.com/@devfire/how-to-become-a-devops-engineer-in-six-months-or-less-366097df7737 ...

  6. 【XML】XML基本结构以及XML-Schema约束

    XML 简介 1998年2月,W3C正式批准了可扩展标记语言的标准定义,可扩展标记语言可以对文档和数据进行结构化处理,从而能够在部门.客户和供应商之间进行交换,实现动态内容生成,企业集成和应用开发.可 ...

  7. JDBC API浅析

    使用java开发数据库应用程序一般都需要用到四个接口:Driver.Connection.Statement.ResultSet 1.Driver接口用于加载驱动程序 2.Connection接口用于 ...

  8. PyQt5-TableWidget 表格视图

    基于PyQt5 postgreSQL实现简单的数据插入.数据表格查询. 运行前需要安装psycopg2 模块,配置好postgerSQL. 先看效果图: 第1列为日期时间.第2列为自增1的编号.第3到 ...

  9. Python进阶-XVIV 类的内置方法:__str__ 、__repr__、析构函数(__del__)、双下的call,eq,new,hash 以及item相关的三个方法

    类的内置方法 它与内置函数有紧密的联系,有的内置函数就是调用的内置方法. 在顶级父类obj中有: 两个双下方法 obj.__str__ str(obj) obj.__repr__ repr(obj) ...

  10. JAVA中a++ 和 ++a 的区别