当前位置: 首页 > 编程日记 > 正文

在 Azure 网站上使用 Memcached 改进 WordPress

编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 和 Windows Azure 网站开发人员体验合作伙伴共同撰写。

您是否希望改善在 Azure 网站服务上运行的 WordPress 网站的性能?如果是,那么您就需要一个可帮助加快您网站速度的缓存。如果您的网站流量较大,最好是设置某种形式的分布式内存缓存机制。

Memcached 是一种通用的分布式内存缓存系统。它通常通过在 RAM 中缓存数据和对象来减少必须读取外部数据源(如数据库或 API)的次数,以加快基于动态数据库的网站的速度。Memcached 系统使用客户端–服务器体系结构。此客户端(即您的网站)将使用客户端库,在此案例中,即使用 PECL Memcached 库,以联系通过端口 11211 公开其服务的服务器。每个客户端都知道所有服务器;而服务器相互之间并不进行通信。

如果某个客户端希望设置或读取某个键的相应值,则该客户端库首先会计算该键的哈希值来确定要使用的服务器。然后该客户端会联系该服务器。该服务器将计算该键的第二个哈希值来确定存储或读取相应值的位置。

Memcached 客户端必须将 Memcached 服务器视为临时缓存;而不能认为当需要数据时,数据始终存储在 Memcached 服务器中。MemcacheDB、Couchbase Server、Varnish 和其他数据库服务器可提供永久存储,同时保持与 Memcached 的协议兼容性。

在本教程中,您将学会如何:

· 在 Azure Ubuntu VM 上设置 Memcached 服务器

· 配置 WordPress 网站使用 Memcached

在 Azure VM 上设置 Memcached

登录 Azure 管理门户并创建 Ubuntu VM。有关详细信息,请参阅如何从虚拟机库中创建 Linux VM。如果您没有 Azure 帐户,快来试用我们的 30 天免费试用版吧(这可是价值 200 美元的 Windows Azure 资源!)。

要访问您的 Ubuntu VM,请安装 SSH 客户端,如 Putty。有关更多详细信息,请参阅如何使用 SSH 安装连接到Linux VM 。打开 Putty 客户端并输入您的 VM 名称,例如 memcachesrv.cloudapp.net,然后单击 Open

在使用计算机管理员用户(在此案例中,即 azureuser)登录后,运行以下命令以启动具有根用户权限的 Linux shell,并将现有库中的程序包列表下载/更新到最新版本的程序包及其在 VM 上的依赖项(见图 2)

sudo -s

apt-get update

默认情况下,端口 11211 已被阻止。要打开此端口,需要登录到 Azure 管理门户以访问 VM 的仪表板。单击 ENDPOINTS并为端口 11211 添加一个新端点。

安装 Memcached

安装 Memcached 需要几个步骤。首先,请通过 apt-get 安装 Memcached:

sudo apt-get install memcached

如果您的服务器上没有编译器,可以下载 build-essential 以便安装 Memcached:

sudo apt-get install build-essential

使用以下命令编辑 Memcached 配置文件 (memcached.conf):

sudo nano /etc/memcached.conf

通过在第 35 行前面添加 # 将该行变成注释

-l 127.0.0.1


配置 WordPress 使用 Memcached

·   使用 FTP 访问您的网站。

·   创建 bin 文件夹。

·   从此处下载和复制 Memcached PECL 扩展。请注意,此扩展适用于 PHP5.4(32 位)。如果您的网站使用的是其他配置,则从此处选择相应的 DLL

·   登录您的管理门户以更新 WordPress 网站配置。在 Configure 下的 app settings 部分中,设置以下内容:

·   从此链接中下载 Memcached 对象缓存插件

·   将 object-cache.php 复制到 wp-content 文件夹。

·   在 wp-config.php 文件中指定 Memcached 服务器详细信息。

在 /* 正上方添加以下类似内容:已完成,请停止编辑!祝您博客编写愉快。

*/

$memcached_servers = array(

           'default' => array('memcachesrv.cloudapp.net:11211' )

);

·   从此处下载 Batcache 插件

·   将 advanced-cache.php 上传到 wp-content 目录

·   将下面一行添加到 wp-config.php 文件的文件开头。

                           define('WP_CACHE',true);

如何测试缓存是否正常运行

通过重新加载主页两次以上并查看 html 源,可以测试缓存是否正常运行。初始加载时,在 </head> 结束标记的正上方,您应当看到与下面类似的注释:

如果刷新 WordPress 页面几次,注释将会更改,表示该页面已从缓存加载:

检查 Memcache 服务器统计信息

我强烈建议您对 Memcached 服务器进行定期跟踪,以了解服务器的状态。以下是执行此操作的几种方法:

1. 如果已执行了“apt-get update”命令,您可以使用您的 Ubuntu VM 中已经提供的 netcat 实用程序。针对在端口 11211 进行侦听的 Memcached 服务器运行 Netcat 以及“stats”命令,将获得您 Memcached 服务器的状态。

 echo "stats" | ncmemcachesrv.cloudapp.net 11211

2. 您可以使用 watch 命令每 2 秒检查一次该状态,并列出状态

            watch "echo stats |ncmemcachesrv.cloudapp.net 11211"

3. 通过调用 PHP Memcached 扩展的 Memcache::getStats () API,您可以以编程方式执行此操作。

进一步阅读

·   Memcached

·   PHP Memcache 类

·   NetCat 实用程序 (Linux)

·   适用于 Memcache 的 PECL 程序包 (Windows)

本文翻译自:

http://blogs.msdn.com/b/windowsazure/archive/2014/01/24/wordpress-with-memcached-on-azure-websites.aspx

转载于:https://www.cnblogs.com/wuwa/p/6191983.html

相关文章:

Caffe源码中io文件分析

Caffe源码(caffe version commit: 09868ac , date: 2015.08.15)中有一些重要的头文件&#xff0c;这里介绍下include/caffe/util/io.hpp文件的内容&#xff1a;1. include文件&#xff1a;(1)、<google/protobuf/message.h>&#xff1a;关于protobuf的介绍可以参考&…

DeepMind悄咪咪开源三大新框架,深度强化学习落地希望再现

作者 | Jesus Rodriguez译者 | 夕颜出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;【导读】近几年&#xff0c;深度强化学习&#xff08;DRL&#xff09;一直是人工智能取得最大突破的核心。尽管取得了很多进展&#xff0c;但由于缺乏工具和库&#xff0c;DRL 方法仍…

seq2seq

链接&#xff1a; https://blog.csdn.net/wuzqchom/article/details/75792501 转载于:https://www.cnblogs.com/yttas/p/10631442.html

vip能ping通,但80不通的解决方法

最近遇到一个很奇怪的问题&#xff0c;在做两台服务器负载均衡的时候&#xff0c;vip已经添加了&#xff0c;而且能ping通了&#xff0c;但是页面访问不了&#xff0c;也就是说80端口一直不通&#xff0c;ipvsadm -lnc查看链接状态全部是SYN_RECV。网上找了好长时间&#xff0c…

OpenCV中imread/imwrite与imdecode/imencode的异同

OpenCV中的cv::imdecode函数是从指定的内存缓存中读一幅图像&#xff0c;而cv::imencode是将一幅图像写进内存缓存中。cv::imread是从指定文件载入一幅图像&#xff0c;cv::imwrite是保存一幅图像到指定的文件中。cv::imread和cv::imdecode内部都是通过ImageDecoder类来进行图像…

奖金+招聘绿色通道,这一届算法大赛关注下?

大赛背景伴随着5G、物联网与大数据形成的后互联网格局的逐步形成&#xff0c;日益多样化的用户触点、庞杂的行为数据和沉重的业务体量也给我们的数据资产管理带来了不容忽视的挑战。为了建立更加精准的数据挖掘形式和更加智能的机器学习算法&#xff0c;对不断生成的用户行为事…

Linux文件属性

文件属性和权限 [rootdaf root]# ls -al total 64 drwxr-x--- 4 root root 4096 Feb 14 22:02 . drwxr-xr-x 23 root root 4096 Feb 16 13:35 .. -rw-r--r-- 1 root root 1210 Feb 10 06:03 anaconda-ks.cfg -rw------- 1…

Caffe源码中layer文件分析

Caffe源码(caffe version commit: 09868ac , date: 2015.08.15)中有一些重要的头文件&#xff0c;这里介绍下include/caffe/layer.hpp文件的内容&#xff1a;1. include文件&#xff1a;(1)、<caffe/blob.hpp>&#xff1a;此文件的介绍可以参考&#xff1a;http://b…

全球首个软硬件推理平台 :NVDLA编译器正式开源

作者 | 神经小姐姐来源 | HyperAI超神经&#xff08;ID:HyperAI&#xff09;【导读】为深度学习设计新的定制硬件加速器&#xff0c;是目前的一个趋势&#xff0c;但用一种新的设计&#xff0c;实现最先进的性能和效率却具有挑战性。近日&#xff0c;英伟达开源了软硬件推理平台…

【leetcode】1018. Binary Prefix Divisible By 5

题目如下&#xff1a; Given an array A of 0s and 1s, consider N_i: the i-th subarray from A[0] to A[i] interpreted as a binary number (from most-significant-bit to least-significant-bit.) Return a list of booleans answer, where answer[i]is true if and only …

php中magic_quotes_gpc对unserialize的影响

昨天朋友让我帮他解决下他网站的购物车程序的问题&#xff0c;程序用的是PHPCMS&#xff0c;换空间前是好的&#xff08;刚换的空间&#xff09;&#xff0c;具体问题是提示成功加入购物车后跳转到购物车页面&#xff0c;购物车里为空。 我看了下代码&#xff0c;大致的原理就是…

值得收藏!基于激光雷达数据的深度学习目标检测方法大合集(上)

作者 | 黄浴转载自知乎专栏自动驾驶的挑战和发展【导读】上周&#xff0c;我们在激光雷达&#xff0c;马斯克看不上&#xff0c;却又无可替代&#xff1f;》一文中对自动驾驶中广泛使用的激光雷达进行了简单的科普&#xff0c;今天&#xff0c;这篇文章将各大公司和机构基于激光…

Caffe源码中Pooling Layer文件分析

Caffe源码(caffe version commit: 09868ac , date: 2015.08.15)中有一些重要的头文件&#xff0c;这里介绍下include/caffe/vision_layers文件中PoolingLayer类&#xff0c;在最新版caffe中&#xff0c;PoolingLayer类被单独放在了include/caffe/layers/pooling_layer.hpp文件中…

手持终端以物联网的模式

近年来&#xff0c;物联宇手持终端以物联网的模式&#xff0c;开启了信息化的管理模式&#xff0c;迸发了新的自我提升和业务新商机。手持终端是一款智能的电子设备&#xff0c;它的核心功能为用户速带来业务效率的提升&#xff0c;如快递行业&#xff0c;每天的工作量需求大&a…

Linux系统基础-管理之用户、权限管理

Linux用户、权限管理一、如何实现"用户管理"1.什么是用户 "User" : 是一个使用者获取系统资源的凭证&#xff0c;是权限的结合&#xff0c;为了识别界定每一个用户所能访问的资源及其服务的。只是一种凭证。会有一个表示数字&#xff0c;计算机会首…

Ubuntu14.04 LTS中安装Ruby 2.4源码操作步骤

(1)、查看是否已安装ruby&#xff0c;执行命令&#xff0c;如下图&#xff0c;可见机子上还没有安装ruby&#xff0c;即使通过apt-get install命令安装也只能安装1.8版本&#xff1b;(2)、从 http://www.ruby-lang.org/en/downloads/ 下载最新稳定版2.4即ruby-2.4.0.tar.gz&a…

图森未来完成2.15亿美元D轮融资,将拓展无人驾驶运输服务

AI科技大本营消息&#xff0c;9月17日&#xff0c;图森未来宣布获得1.2亿美元的D2轮投资&#xff0c;并完成总额为2.15亿美元的D轮融资。D2轮的投资方除了此前已宣布的UPS外&#xff0c;还包括新的投资方鼎晖资本&#xff0c;以及一级供应商万都&#xff08;Mando Corporation&…

中国互联网公司开源项目调研报告

近年来&#xff0c;开源技术得到越来越多的重视&#xff0c;微软收购GitHub、IBM收购红帽&#xff0c;都表明了开源的价值。国内公司也越来越多的参与开源&#xff0c;加入开源基金会/贡献开源项目。但是&#xff0c;它们到底做得如何呢&#xff1f;为此InfoQ统计了国内在GitHu…

ReSharper 配置及用法

1:安装后&#xff0c;Resharper会用他自己的英文智能提示&#xff0c;替换掉 vs2010的智能提示&#xff0c;所以我们要换回到vs2010的智能提示 2:快捷键。是使用vs2010的快捷键还是使用 Resharper的快捷键呢&#xff1f;我是使用re的快捷键 3: Resharper安装后&#xff0c;会做…

Ubuntu14.04 LTS中升级gcc/g++版本到4.9.4的操作步骤

Ubuntu14.04 LTS中默认的gcc/g版本为4.8.4&#xff0c;如下图&#xff0c;在C11中增加了对正则表达式的支持&#xff0c;但是好像到gcc/g 4.9.2版本才会对正则表达式能很好的支持&#xff0c;这里介绍下Ubuntu14.04 LTS升级gcc/g版本到4.9.4的操作步骤&#xff1a; 1&#xff0…

华为全球最快AI训练集群Atlas 900诞生

作者 | 胡巍巍来源 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;你&#xff0c;和计算有什么关系&#xff1f;早上&#xff0c;你打开手机App&#xff0c;查看天气预报&#xff0c;和计算有关&#xff1b;中午&#xff0c;你打开支付宝人脸支付&#xff0c;买了份宫保…

rabbitmq可靠发送的自动重试机制 --转

原贴地址 https://www.jianshu.com/p/6579e48d18ae https://www.jianshu.com/p/4112d78a8753 git项目代码地址 https://github.com/littlersmall/rabbitmq-access 转载于:https://www.cnblogs.com/hmpcly/p/10641688.html

在Linux下如何安装配置SVN服务

2019独角兽企业重金招聘Python工程师标准>>> Linux下在阿里云上架一个svn centos上安装&#xff1a;yum install subversion 安装成功 键入命令 svnserve --version 有版本信息则进行下一步 1、新建版本库目录 mkdir -p /opt/svndata/repos 2、设置此目录为…

201671030129 周婷 《英文文本统计分析》结对项目报告

项目内容这个作业属于哪个课程软件工程这个作业的要求在哪里软件工程结对项目课程学习目标熟悉软件开发整体流程及结对编程&#xff0c;提升自身能力本次作业在哪个具体方面帮助我们实现目标体验组队编程&#xff0c;体验一个完整的工程任务一&#xff1a; 作业所点评博客GetHu…

C++/C++11中std::string用法汇总

C/C11中std::string是个模板类&#xff0c;它是一个标准库。使用string类型必须首先包含<string>头文件。作为标准库的一部分&#xff0c;string定义在命名空间std中。std::string是C中的字符串。字符串对象是一种特殊类型的容器&#xff0c;专门设计来操作字符序列。str…

你在付费听《说好不哭》,我在这里免费看直播还送书 | CSDN新书发布会

周一的时候&#xff0c;我拖着疲惫的身体回到家中&#xff0c;躺倒床上刷刷朋友圈&#xff0c;什么&#xff1f;周杰伦出新歌了&#xff1f;朋友圈都是在分享周杰伦的新歌《说好不哭》&#xff0c;作为周杰伦的粉丝&#xff0c;我赶紧打开手机上的QQ音乐&#xff0c;准备去听&a…

解决Mysql:unrecognized service错误的方法(CentOS)附:修改用户名密码

2019独角兽企业重金招聘Python工程师标准>>> service mysql start出错&#xff0c;mysql启动不了&#xff0c;解决mysql: unrecognized service错误的方法如下&#xff1a; [rootctohome.com ~]# service mysql startmysql: unrecognized service [rootctohome.co…

Caffe源码中Net文件分析

Caffe源码(caffe version commit: 09868ac , date: 2015.08.15)中有一些重要的头文件&#xff0c;这里介绍下include/caffe/net.hpp文件的内容&#xff1a;1. include文件&#xff1a;(1)、<caffe/blob.hpp>&#xff1a;此文件的介绍可以参考&#xff1a;http://blo…

满满干货的硬核技术沙龙,免费看直播还送书 | CSDN新书发布会

周一的时候&#xff0c;我拖着疲惫的身体回到家中&#xff0c;躺倒床上刷刷朋友圈&#xff0c;什么&#xff0c;周杰伦出新歌了&#xff1f;朋友圈都是在分享周杰伦的新歌《说好的不哭》&#xff0c;作为周杰伦的粉丝&#xff0c;我赶紧打开我手机上的QQ音乐&#xff0c;准备去…

【重磅上线】思维导图工具XMind:ZEN基础问题详解合集

XMind是XMind Ltd公司旗下一款出色的思维导图和头脑风暴软件。黑暗的UI设计、独特的ZEN模式、丰富的风格和主题、多分支的颜色等等功能会让你的工作更加便捷与高效。在视觉感官上也会给你带来最佳的体验感。 对于初学者来说&#xff0c;肯定会遇到各种各样的问题&#xff0c;有…