memcache服务端与客户端的安装部署
1)安装memcached前需要先安装libevent
[root@aliyun tools]# tar -zxf libevent-1.4.13-stable.tar.gz
[root@aliyun tools]# cd libevent-1.4.13-stable
[root@aliyun libevent-1.4.13-stable]# ./configure
[root@aliyun libevent-1.4.13-stable]# make && make install
2)安装memcahced服务
tar -zxf memcached-1.4.13.tar.gz
cd memcached-1.4.13
./configure
make && make install
3)启动服务
[root@weiwei memcached-1.4.13]# memcached -m 16m -p 11211 -d -u root -c 8192
给多少内存要自己算,根据需求
还可以同时起几个
[root@weiwei memcached-1.4.13]# memcached -m 16m -p 11212 -d -u root -c 8192
[root@weiwei memcached-1.4.13]# memcached -m 16m -p 11213 -d -u root -c 8192
4)存数据取数据
操作memcached命令的语法:
set key 0 0 10
<command name> <key> <flags><exptime><bytes>\r\n
过期时间
#存储
[root@weiwei ~]# printf "set key008 0 0 10\r\noldboy0987\r\n" | nc 127.0.0.1 11211
STORED
#查询
[root@weiwei ~]# printf "get key008\r\n"|nc 127.0.0.1 11211
VALUE key008 0 10
oldboy0987
END
#删除
[root@weiwei ~]# printf "delete key008\r\n"|nc 127.0.0.1 11211
DELETED 也可以telnet登录,,然后操作,但是不是很建议,不方便
5)安装memecache客户端
tar -zxf memcache-2.2.5.tgz
cd memcache-2.2.5
/application/php/bin/phpize
./configure --with-php-config=/application/php/bin/php-config --enable-memcache --with-zlib-dir
echo $?
make && make install
ll /application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/
total 244
-rwxr-xr-x. 1 root root 246624 Sep 25 20:09 memcache.so
6)因为配置客户端所以要配置php.ini文件
改为如下:
winodows的不要改
extension_dir = "/application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/" 并添加一行
extension=memcache.so
7)然后重启php,查看是否生效
pkill php-fpm
/application/php/sbin/php-fpm
phpinfo();查看有没有相应的模块 用php脚本的方式查看
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('127.0.0.1', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache->set('key001', 'oldboy001'); //设置一个变量到内存中,名称是key001值是oldboy001
$memcache->set('key002', 'oldboy002'); //设置一个变量到内存中,名称是key002值是oldboy002
$get_value01 = $memcache->get('key001'); //从内存中取出key001的值
$get_value02 = $memcache->get('key002'); //从内存中取出key002的值
echo $get_value02."<br>";
echo $get_value01;
?> 结果:
oldboy002
oldboy001
8)memcached如何实现集群中的session共享存储
在php.ini文件中修改,所有的web服务器都改这两个地方就可以共享存储session了,每个WEB服务安装个客户端就好,然后去吧
1)session.save_handler = memcache
2)session.save_path = "tcp://192.168.222.128:11211" 优点:
1)memcached是内存缓存,在读写速度上会比普通files时快很多。
2)可以解决多个服务器共用session的难题。
缺点:
1)session数据都保存在memory中,持久化方面有所欠缺,但对session数据来说不是问题。
2)也可以用其他的持久化系统存储sessions,例如:redis,ttserver。
3)高性能高并发场景,cookies的效率比session要好很多,因此,很多大网站都会用cookies解决会话共享问题。
9)memcached服务的状态信息如何获取?例如:命中率
[root@weiwei ~]# printf "stats\r\n"|nc 127.0.0.1 11211
STAT pid 10813
STAT uptime 8917
STAT time 1506348783
STAT version 1.4.13
STAT libevent 1.4.13-stable
STAT pointer_size 64
STAT rusage_user 0.237963
STAT rusage_system 0.306953
STAT curr_connections 10
STAT total_connections 17
STAT connection_structures 11
STAT reserved_fds 20
STAT cmd_get 4
STAT cmd_set 4
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 3
STAT get_misses 1
STAT delete_misses 0
STAT delete_hits 1
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 191
STAT bytes_written 178
STAT limit_maxbytes 16777216
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT bytes 160
STAT curr_items 2
STAT total_items 3
STAT evictions 0
STAT reclaimed 0 图形化的界面管理工具,,状态的信息
memadmin
10)memcached需要监控那些 指标
1)端口11211
2)命中
3)反应时间
4)模拟用户监控
php程序:curl http://ip/check_mc.php|grep oldboy|wc -l
memcahce持久化存储,,,ttserver
11)memcached状态查看
stat settings可以查看一些memcached设置 例如 线程数
stats slabs 查看slabs相关情况
stats items 查看Items相关情况
stats sizes查看存在的Item个数和大小
stats cachedump 查看key value
stats reset 清理统计数据
12)pkill关闭会关闭掉所有的进程,但是如果此时是多实例的状态,就应该指定pid去关闭
memcached -m 16m -p 11212 -d -u root -c 8192 -P /var/run/11212.pid
memcached -m 16m -p 11213 -d -u root -c 8192 -P /var/run/11213.pid
kill `cat /var/run/11212.pid`
memcache服务端与客户端的安装部署的更多相关文章
- linux(centos 6.4)下安装php memcache服务端及其客户端(详细教程)
前言 在搭建个人博客时,由于没有使用任何框架,纯手工code前台和后台,导致遇到许多问题,其中一个问题就是mysql连接导致的页面相应速度异常低.在查询各种途径后,只能考虑使用memcache缓存.在 ...
- SVN服务端和客户端的安装与搭建
版权声明:本文为博主原创文章,转载请注明原文出处. https://blog.csdn.net/zzfenglin/article/details/50931462 SVN简介 SVN全名Subver ...
- 详解----memcache服务端与客户端
Memcache是danga.com的一个项目,用这个缓存项目来构建自己大负载的网站,来分担数据库的压力. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工作机制是在内存中开辟一块空间,然后建 ...
- [企业化NET]Window Server 2008 R2[2]-SVN 服务端 和 客户端 安装
1. 服务器基本安装即问题解决记录 √ 2. SVN环境搭建和客户端使用 2.1 服务端 和 客户端 安装 √ 2.2 项目建立与基本使用 √ 2.3 基本冲突解决, ...
- 部署zabbix服务端和客户端和网页
一:安装zabbix服务端 1.部署准备 命令:iptables -F #关闭防火墙命令:systemctl stop firewalld #关闭防火墙 设置解析,自建yum源 命令:c ...
- (转)SVN 服务端、客户端安装及配置、导入导出项目
SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...
- SVN1.6服务端和客户端安装配置指导
本节向大家描述SVN1.6服务端和客户端安装配置步骤,随着SVN的快速发展,版本也进行了升级更新,本节就和大家一起学习一下SVN1.6服务端和客户端安装配置步骤,欢迎大家一起来学习.下面是具体介绍.1 ...
- 安装lanproxy服务端、客户端以及小问题解决
准备 我们这里使用java客户端与服务端连接 1.一台公网服务器(运行proxy-server).2.一台内网客户端(运行proxy-client). 下载地址:https://seafile.cdj ...
- SVN 服务端 和 客户端
网址大全 | EF CodeFirst | 电视 | MyNPOI | 开源 | 我的皮肤 | ASP.NET MVC4 | 前端提升 | LINQ | WCF ...
随机推荐
- 【转】【Linux】grep命令详解
简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它 ...
- 有关Servlet的生命周期说法正确的有( )。
A.Servlet的生命周期由Servlet实例控制 B.init()方法在创建完Servlet实例后对其进行初始化,传递的参数为实现ServletContext接口的对象 C.service()方法 ...
- MySQL--执行mysql脚本及其脚本编写
http://www.cnblogs.com/kex1n/archive/2010/03/26/2286504.html
- img与特殊布局下对浏览器渲染的剖析
补白 在内联元素中,分为替换元素和非替换元素(不了解的同学可以百度一下),非替换元素是不可以设置尺寸的,而替换元素作为特殊的内联元素,由于其自身拥有尺寸属性,所以其的尺寸是可以进行再次设置的. 此文适 ...
- Android 网卡修改
无线网卡配置可能的存储位置 1./data/nvram/APCFG/APRDEB/,配置文件是WIFI,需要使用HexEditor工具修改 2.etc/fireware/,文件名是nvram.txt( ...
- 第十五篇:C程序的存储空间布局
前言 C语言程序的执行必定需要耗费一定的资源,也就是说,程序在计算机内部的映像不可能就单单代码. 本文将讲解C语言程序在计算机内部的存在方式. 程序存储空间 1. 正文段:程序的机器指令部分 2. 初 ...
- 40 个顶级 jQuery 图片、内容滑块和幻灯片
在这个快速发展的网络世界中,我们使用图片.内容滑块和幻灯片来给网站实现良好.有吸引力的外观.你可以吸引浏览者借助图像滑块让网站更加具有活力.使用 JavaScript 可以轻松实现轻量级的图片和内容滑 ...
- c++11 类型推断
自动类型推断 当编译器能够在一个变量的声明时候就推断出它的类型,那么你就能够用auto关键字来作为他们的类型: auto x = 1; 编译器当然知道x是integer类型的.所以你就不用int了.接 ...
- MyBatis基础入门
1.MyBatis概述 MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动.创建connection.创 ...
- SpringCloud--注册中心Eureka
Eureka的服务治理设计中,所有节点即是服务提供方,也是服务消费方. Eureka Server的高可用:就是将自己作为服务向其他服务注册中心注册自己,形成一组互相注册的服务注册中心,实现服务清单的 ...