1.memcached的应用背景及作用

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。MEMCACHE与其他应用配合使用。应用会调用MEMCACHE的接口,将需要缓存的数据存放到内存中专门为MEMCACHE开辟的一块空间。

2.安装准备

主要是安装memcache服务器端,生产上安装的版本是 memcached-1.2.6

官网:http://www.memcached.org/

下载地址:http://code.google.com/p/memcached/downloads/detail?name=memcached-1.2.6.tar.gz&can=1&q=

另外,Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent,生产上安装的libevent的版本是 libevent-1.1a。(如果你的系统已经安装了libevent,可以不用安装)

官网:http://www.monkey.org/~provos/libevent/

下载:http://www.monkey.org/~provos/libevent-1.1a.tar.gz

3安装

本次实验测试服务器为:10.10.41.22。操作系统版本信息如下(双击可编辑):

3.1        LibEvent安装

配置时需要指定一个安装路径(红色部分):

测试libevent是否安装成功(如下所示代表成功,红色部分为libevent安装路径下的lib目录):

3.2        Memcache安装

安装memcached,同时需要安装中指定libevent的安装位置(蓝色部分):

如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。安装完成后会把memcached放到红色部分所示位置

测试memcached是否安装成功(如下代表安装成功):

4     配置

Memcache常见的参数配置信息可以在启动服务时通过脚本传入参数设定。注意:Memcache服务本身没有运行日志。

4.1        启动服务

示例:

参数说明:

-d选项是启动一个守护进程,

-m是分配给Memcache使用的内存数量,单位是MB,此处设置为100MB,

-u是运行Memcache的用户,此处设置为root,

-l是监听的服务器IP地址,如果有多个地址的话,此处设置为应用所在服务器的IP地址10.10.41.22,

-p是设置Memcache监听的端口,此处设置为6577,最好是1024以上的端口,

-c选项是最大运行的并发连接数,默认是1024,此处设置为256,

-P是设置保存Memcache的pid文件,此处设置为保存在 /tmp/memcached.pid,

4.2        停止服务

Memcache自带脚本中没有停止服务的参数,可以自行编写简单脚本。如下为两个示例:

1)      直接使用”ps”命令

2)      根据启动时所设置的、保存pid的文件

5     使用示例

测试时可以使用现有的SOA服务器进行验证。

SOA服务器部署路径:/root/zyn/plat2-soa-busi

SOA服务器memcache配置文件:/root/zyn/plat2-soa-busi/v2/app/bin/memcached.properties。

1)      具体设置如下:

2)   验证MEMCACHE是否启动

由于MEMCACHE自身没有运行日志,查看MEMCACHE是否启动,只能通过查看进程是否存在的方式。

3)   验证应用端MEMCACHE配置是否成功

对于MEMCACHE是否配置成功的验证,则需要根据具体应用来判断。

例如本例中的SOA应用,在配置了MEMCACHEh后:如果MEMCACHE没有启动,SOA也可以正常启动;只有在具体交易时,如果MEMCACHE服务状态异常,SOA中才会报错。

6     卸载

Libevent和memcache的卸载,与普通软件一样,使用”make uninstall”命令或手工删除。

7     安装常见错误

7.1         /lib/libevent-1.1a.so.1的错误

错误信息:error while loading shared libraries: libevent-1.1a.so.1: cannot open shared object file: No such file or directory

错误原因:找不到libevent-1.1a.so.1,会导致在启动memcache时报如上错误。解决办法

7.2        未安装libevent的错误

错误信息:checking host system type… Invalid configuration `x86_64-unknown-linux-gnu’: machine `x86_64-unknown’ not recognized

错误原因:如果没有安装libevent,在memcache中执行configure操作的时候会报如上错误

基于linux操作系统安装、使用memcached详解的更多相关文章

  1. 基于linux操作系统安装、使用redis详解

    服务端安装 Redis的官方下载站是http://redis.io/download,可以去上面下载最新的安装程序下来,我写此文章时的的稳定版本是2.6.11. 步骤一: 下载Redis 进入软件安装 ...

  2. 【转】在VMware中为Linux系统安装VM-Tools的详解教程

    在VMware中为Linux系统安装VM-Tools的详解教程 如果大家打算在VMware虚拟机中安装Linux的话,那么在完成Linux的安装后,如果没有安装Vm-Tools的话,一部分功能将得不到 ...

  3. 【山外笔记-数据库】Memcached详解教程

    本文打印版文档下载地址 [山外笔记-数据库]Memcached详解教程-打印版.pdf 一.Memcached数据库概述 1.Memcached简介 (1)Memcached是一个自由开源的,高性能, ...

  4. Linux文件权限与属性详解 之 ACL

    Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...

  5. Linux内存管理之mmap详解

    转发之:http://blog.chinaunix.net/uid-26669729-id-3077015.html Linux内存管理之mmap详解 一. mmap系统调用 1. mmap系统调用  ...

  6. Linux驱动开发必看详解神秘内核(完全转载)

    Linux驱动开发必看详解神秘内核 完全转载-链接:http://blog.chinaunix.net/uid-21356596-id-1827434.html   IT168 技术文档]在开始步入L ...

  7. Linux双网卡绑定bond详解--单网卡绑定多个IP

    Linux双网卡绑定bond详解 1 什么是bond 网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术.Kernels 2.4.12及 ...

  8. Linux自带神器logrotate详解

    Linux自带神器logrotate详解 散尽浮华 运维 3天前   作者:散尽浮华 链接:https://www.cnblogs.com/kevingrace/p/6307298.html 对于 L ...

  9. Linux上的free命令详解、swap机制

    Linux上的free命令详解   解释一下Linux上free命令的输出. 下面是free的运行结果,一共有4行.为了方便说明,我加上了列号.这样可以把free的输出看成一个二维数组FO(Free ...

随机推荐

  1. Rxjava+retrofit+mvp整合

    转载请标明出处: http://blog.csdn.net/forezp/article/details/52621898 本文出自方志朋的博客 最近在看Rxjava,写了一个简单的 demo整合了R ...

  2. 实际案例告诉你为什么Oracle不建议使用varchar2来存时间数据

    问题现象2015年9月客户系统中一条高逻辑读的SQL语句,在业务高峰期执行频率较高,导致系统逻辑读居高不下,同时带高了系统CPU,SQL语句主体部分如下 SELECT /* ^^*/ COUNT(DI ...

  3. Ajax跨域请求以及乱码解决

    Ajax跨域请求2种解决方法 1 ) 什么叫跨域请求,协议,域名,端口号,其中一样不同都称跨域; 第一种:使用script标签发送请求; //创建一个script标签; var v_element=d ...

  4. pytorch中torch.nn构建神经网络的不同层的含义

    主要是参考这里,写的很好PyTorch 入门实战(四)--利用Torch.nn构建卷积神经网络 卷积层nn.Con2d() 常用参数 in_channels:输入通道数 out_channels:输出 ...

  5. 爬取多个url页面数据--手动实现

    # -*- coding: utf-8 -*- import scrapy from qiubaiByPages.items import QiubaibypagesItem class Qiubai ...

  6. 对文件 I/O,标准 I/O 的缓冲的理解

    1.标准I/O缓冲区 要理解标准I/O,就要先知道文件I/O的业务逻辑. 下面图示为文件I/O 如执行下面的代码: write(fd, buf2, sizeof(buf2)); 图中 buf:就是bu ...

  7. P2158 [SDOI2008] (欧拉函数

    题目描述 作为体育委员,C君负责这次运动会仪仗队的训练.仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图 ...

  8. Background Segment CNT

    CNT简介 CNT算法是OpenCV Contrib 模块中的背景减除(Background segment)算法之一.相较于OpenCV提供的其他背景减 除算法,该算法具有运行速度快,检测精度高等优 ...

  9. SVD在推荐系统中的应用详解以及算法推导

    SVD在推荐系统中的应用详解以及算法推导     出处http://blog.csdn.net/zhongkejingwang/article/details/43083603 前面文章SVD原理及推 ...

  10. Android面试收集录14 Android进程间通信方式

    一.使用 Intent Activity,Service,Receiver 都支持在 Intent 中传递 Bundle 数据,而 Bundle 实现了 Parcelable 接口,可以在不同的进程间 ...