Memcached安装部署for Centos6

本文源链接地址:https:www.93bok.com

实验环境: Centos6.5minimal 64位系统
服务器IP:192.168.10.22
说明:
1.  安装包已经提前下载好,此文章中不再演示下载步骤
2.  根据笔者习惯,所有的源码包都在/a01/apps/apps_src/
3.  所有的服务安装路径都在/a01/apps/xxxxxxx
4.  LNMP源码编译环境自己参考之前文章即可,本文不再演示
5.  注意开启防火墙11211端口,本文不再演示

包版本:

Memcached:      memcached-1.4.39.tar.gz、libevent-2.1.8-stable.tar.gz
Memcache的PHP扩展: libmemcached-1.0.18.tar.gz、memcached-3.0.3.tgz

Memcached概述

Memcached是一个高性能的分布式内存对象缓存系统,它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached 基于一个存储键/值对的 hashmap。其守护进程(daemon)是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议不守护进程通信。

memcached是一个C/S结构

server端:memcached
client端:memcache
运行模式:C/S
端口号:11211

作用:

memcached可以缓存MySQL的查询结果,优化MySQL I/O
memcached可以存储session(不建议)

运行机制:

普通情况:user-->web-->mysql

使用memcache情况:user-->web-->memcache-->mysql

1)memcache的优先级大于MySQL,web向数据库取数据的时候,优先去找memcache
2)数据放到memcache会优化MySQL I/O,因为内存比硬盘速度快
3)memcache缓存数据的方式:
1、将数据全部缓存在内存
2、缓存到硬盘中 【如果要缓存的数据量不是非常大,不建议】

注意: 缓存断电后,所有缓存数据全部丢失

4)memcache存储缓存数据的方法:

将MySQL查询结果以key=value的形式写入内存

每条数据都有自己的有效期,在有效期内,我们称之为热点数据,过期数据叫脏数据

5)memcache内存缓存大小
32bit操作系统       2G
64bit操作系统       无限制

注意: 如果本服务器只运行memcache,memcache设置的内存缓存大小应该为物理内存的80%-70%,根据数量来定

6)数据缓存周期

memcache的数据缓存周期可以自定义,即使调设为永久不过期的数据,默认也会在30天后过期

一、编译安装Memcached

1、安装依赖libevent(下载地址http://libevent.org/)

tar -zxvf libevent-2.1.8-stable.tar.gz
cd libevent-2.1.8-stable
./configure --prefix=/a01/apps/libevent && make -j 4 && make install && echo $?

2、解包memcached(下载地址http://memcached.org/downloads)

tar -zxvf memcached-1.4.39.tar.gz
cd memcached-1.4.39

3、配置

./configure --prefix=/a01/apps/memcached --with-libevent=/a01/apps/libevent/

4、四核编译

make -j 4
make的作用:make是把Makefile文件中的指令编译成计算机认识的二进制文件
-j 4的作用:比如我的服务器是4核CPU,同时启用4核来编译,速度更快,2核就-j 2

5、安装

make install

6、启动memcached

/a01/apps/memcached/bin/memcached -u www -p 11211 -l 192.168.10.22 -P /var/run/memcached.pid -m 128m -c 2048 -d

参数:

-u      #运行用户
-p      #监听端口
-l      #监听地址
-P      #pid路径
-m      #内存缓存大小
-c      #最大并发
-d      #作为守护进程在后台运行

7、编写memcached脚本加入系统服务

vim /etc/init.d/memcached

#!/bin/bash
#chkconfig: 35 99 20
#description: This is zhe memcached server
MEMCACHED="/a01/apps/memcached/bin/memcached"
USER="www"
PORT="11211"
IP="192.168.10.22"
PID="/var/run/memcached.pid"
NAME="memcached"

case "$1" in
start)
echo "starting $NAME..."
        $MEMCACHED -u $USER -p $PORT -l $IP -P $PID -m 128m -c 2048 -d
echo "$NAME $1 is SUCCESS"
;;
stop)
echo "stopping $NAME..."
        killall -s QUIT $NAME
echo "$NAME is DOWN"
;;
restart)
$0 stop
        $0 start
;;
esac

8、加入系统服务并开机自启

chmod +x /etc/init.d/memcached
chkconfig --add memcached
chkconfig memcached on

9、测试

10、测试使用memcache存储数据是否正常

telnet 192.168.10.22 11211

参数说明:

1)set xifu 6 300 10         #往memcached缓存中存储一个键值,标志6,缓存时间300秒(0表示永不过期),字符串长度为10个字节
2)huanglihua                #输入数据
3)STORED                    #该标志表示存入成功(NOT_STORED表示存入失败)
4)get xifu                  #get命令读缓存的数据
5)END                       #该标志表示结束
6)quit                      #退出

二、安装memcached的php扩展

1、安装依赖libmemcached(下载地址https://launchpad.net/libmemcached/+download)

yum -y install cyrus-sasl-devel

注意: 必须要先安装该依赖再去安装libmemcached,否则后边开始安装memcached扩展的时候会报错

安装了cyrus-sasl-devel之后再编译libmemcached时会有以下提示

如果没有安装cyrus-sasl-devel,当编译memcached扩展时报错信息如下:

tar -zxvf libmemcached-1.0.18.tar.gz
cd libmemcached-1.0.18
./configure --prefix=/a01/apps/libmemcached && make -j 4 && make install && echo $?

2、解包memcached(下载地址http://pecl.php.net/package/memcached)

tar -zxvf memcached-3.0.3.tgz
cd memcached-3.0.3

3、配置

/a01/apps/php7/bin/phpize

注意: phpize是用来扩展php模块的,通过phpize可以建立php的扩展模块

./configure --with-php-config=/a01/apps/php7/bin/php-config --with-libmemcached-dir=/a01/apps/libmemcached/

4、四核编译

make -j 4

5、安装

make install

6、查看是否生成了该模块

7、配置php.ini

vim /etc/php/php.ini

[memcached]
extension=memcached.so

8、重启php-fpm并查看是否添加上memcached扩展

service php-fpm restart
http://192.168.10.22/test.php

9、写一个php页面测试memcache和memcached的连接

vim /a01/apps/nginx/html/memcache.php

<?php
$memcache = new memcached();
$memcache -> addserver(‘192.168.10.22‘,11211);
$memcache -> set(‘test‘,‘helloword‘);
var_dump ($memcache -> get(‘test‘));
?>
http://192.168.10.22/memcache.php

原文地址:https://www.cnblogs.com/93bok/p/9679888.html

时间: 2024-11-08 03:46:33

Memcached安装部署for Centos6的相关文章

Memcached安装部署

Memcached安装部署 发表回复 简述: Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据 库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信.但是它并不提供冗余(例如,复制其hashmap条目):当某个服务器S停止运行或崩溃了,所有存放在S

redis安装部署(Centos6.9)

1 下载redis包,编译安装 wget http://download.redis.io/redis-stable.tar.gz tar xf redis-stable.tar.gz && cd redis-stable make (若有报错安装对应的依赖包;然后先执行make distclean(清理缓存)再执行make) make install 2 创建配置目录 mkdir -pv /var/redis/{data,run,log} mkdir /etc/redis/ 3  复制相

Memcached安装与部署

1.      准备工作 下载libevent:http://monkey.org/~provos/libevent/ (由于memcached与客户端的通信是借助libevent来实现的,所以此动作必须在memcached安装前完成) 下载memcached:http://memcached.org/ (注意:memcache是由服务器端和客户端共同组成,此处指memcache的服务器端,客户端在memcache的官网也提供了下载地址) 分别把memcached和libevent下载回来,放到

Centos6.7安装部署cobbler完成无人值守化安装部署

 Centos6.7部署cobbler完成无人值守化安装部署                   Cobbler是一个免费开源系统安装部署软件,用于自动化网络安装操作系统.在生产环境中,经常批量部署几十甚至上百台服务器时,实现自动化安装操作系统尤为重要,按照传统的光盘引导安装工作量是不可预估的:此前我们通过pxe+kickstart简单实现了自动化安装,但只能实现单一版本安装,当需要部署不同版本或不同引导模式(BIOS.EFI)时,此种方式就不够灵活.而Cobbler正是为了解决此问题而设计的.

centos6.4 docker1.0 安装部署

一:简介: Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal.OpenStack 集群和其他的基础应用平台. 二:Docker应用场景: 1.web应用的自动化打包和发布: 2.自动化测试和持续集成.发布: 3.在服务型环境中部署和调整数据库或其他的后台应用: 4.从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的

【原】Centos6.5下cdh4.6 hive安装部署

1.前提条件: 只需要选择一台服务器即可,这里选择安装在namenode上:安装用户为cloud-user 2.安装包: sudo yum install -y hive hive-metastore hive-server2 3.安装mysql: sudo yum install -y mysql-server sudo service mysqld start sudo yum install -y mysql-connector-java sudo ln -s /usr/share/jav

Centos-6.5安装部署redis

redis作为NoSQL数据库的一种应用,响应速度和命中率上还是比较高效的.项目中需要用集中式可横向扩展的缓存框架,因配合开发人员做测试,以下讲讲redis的安装部署过程. 下载redis 官网下载:http://redis.io/download 下载方式及版本依个人情况而定,我选择的版本是redis-3.0.7 wget http://download.redis.io/releases/redis-3.0.7.tar.gz 或者下载完成后拷贝到linux服务器 安装redis 首先安装依赖

使用ceph-deploy安装部署线上ceph分布式存储集群(centos6.6)

一:CEPH简介 OSDs: Ceph的OSD守护进程(OSD)存储数据,处理数据复制,恢复,回填,重新调整,并通过检查其它Ceph OSD守护程序作为一个心跳 向Ceph的监视器报告一些检测信息.Ceph的存储集群需要至少2个OSD守护进程来保持一个 active + clean状态.(Ceph默认制作2个备份,但你可以调整它) Monitors:Ceph的监控保持集群状态映射,包括OSD(守护进程)映射,分组(PG)映射,和CRUSH映射. Ceph 保持一个在Ceph监视器, Ceph O

Memcached 安装脚本(附服务器自启动)

一.目的 为简化Memcached快速安装部署,并添加至服务启动项,开机自启动. 二.脚本 2.1 github地址github链接2.2 脚本内容 #!/bin/bash #mail:[email protected] #function:auto install memcached clear echo "##########################################" echo "# Auto Install Memcached-1.4 ##&qu