分布式缓存系统之Memcached
简单介绍:
Memcache缓存数据库:减少数据库压力。高性能的分布式内存缓存服务器,用于动态Web应用,减少I/O,提高web访问速度以减轻数据库负载,以提高动态Web应用的速度、提高可扩展性。利用 Memcached 处理实时数据读写;MySQL是影响性能的最大瓶颈,可以用一台MySQL主库(只写)+多台MySQL辅库(只读)的主辅库集群来解决。另外,访问计数等实时性很强的东西用Memcache做缓存。基于c#语言写的调用libevent库事件来实现。
1. hash表结构:key、value存取方式
2. 工作方式:memcached是以守护程序方式运行一个或多个服务器中,随时会接受客户端(如:PHP)连接或操作。
Linux安装配置
一、Memcached安装
1
2
3
4
5
6
|
wget http: //memcached .googlecode.com /files/memcached-1 .4.10. tar .gz
yum install libevent libevent-devel #安装Memcached组件
tar zxvf memcached-1.4.10. tar .gz
cd memcached-1.4.10
. /configure
make && make install
|
查看是否成功安装memcached
1
2
3
|
ls -al /usr/local/bin/mem *
-rwxr-xr-x 1 root root 137986 11?? 12 17:39 /usr/local/bin/memcached
-rwxr-xr-x 1 root root 140179 11?? 12 17:39 /usr/local/bin/memcached-debug
|
二、安装Memcache的PHP扩展
1
2
3
4
5
6
|
wget http: //pecl .php.net /get/memcache-3 .0.6.tgz
tar zvxf memcache-3.0.6.tgz
cd memcache-3.0.6
/usr/local/php/bin/phpize
. /configure –with-php-config= /usr/local/php/bin/php-config
make && make installmemcache模块
|
使php加载memcache模块
1
2
|
vi /etc/php .ini
extension=memcache.so
|
三、启动Memcache的服务器端:
1
|
/usr/local/bin/memcached -d -m 128 -l 192.168.0.10 -p 11211
|
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB
-u是运行Memcache的用户
-l是监听的服务器IP地址
-p是设置Memcache监听的端口,最好是1024以上的端口
-c选项是最大运行的并发连接数,默认是1024,根据你服务器的负载量来设定
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,
结束Memcache进程,执行:killall memcached
Windows安装配置:
下载Memcached:http://ishare.iask.sina.com.cn/f/36094281.html
下载5.3php_memcache.dll:http://code.google.com/p/sirius/downloads/detail?name=php_memcache.dll&can=2&q=
一、Memcached和Memcache安装:
1、 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached
2、 CMD页面下输入 ‘c:\memcached\memcached.exe -d install’ #安装memcached到系统服务
3、安装php_memcache.dll,下载对应的php版本
4、加载memcache客户端,在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’
5、启动memcached:
c:\memcached\memcached.exe -d –m 128 –l 127.0.0.1 –p 11211 start #默认端口:11211
二、Memcache环境测试:
1.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!
2.也可以运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。
1
2
3
4
5
6
7
|
< ?php
$mem = new Memcache;
$mem->connect(“127.0.0.1″, 11211);
$mem-> set (‘key’, ‘This is a test !’, 0, 60);
$val = $mem->get(‘key’);
echo $val;
?>
|
其他测试:telnet 192.168.0.202 11211或phpinfo()
常用命令:status、version、flush_all、quit、get、add、set
本文转自 李振良OK 51CTO博客,原文链接:http://blog.51cto.com/lizhenliang/1290430,如需转载请自行联系原作者
分布式缓存系统之Memcached相关推荐
- 分布式缓存系统Memcached简介与实践(.NET memcached client library)
原文:分布式缓存系统Memcached简介与实践(.NET memcached client library) 缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加 ...
- .NET下实现分布式缓存系统Memcached
[IT168 技术文档]在Web应用程序中,数据通常保存在RDBMS中,应用服务器从数据库中读取数据并在浏览器中显示.但随着数据量的增大.访问的集中,就会出现RDBMS的负载加重.数据库响应变慢.网站 ...
- Linux分布式缓存系统——memcached+LAMP环境搭建+监控
概述 memcached简介 Memcached是一个开源.高性能.分布式内存对象缓存系统. Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串.对象),这些数据 ...
- 【缓存】分布式缓存系统-DCache、redis、Memcached、SSDB
分布式缓存系统有DCache.redis.Memcached.SSDB等 区别 实际开发中经常使用的分布式缓存系统主要有Redis.MemCache.SSDB,这三者都是KV存储方案,各有优缺,但Re ...
- Alluxio在多级分布式缓存系统中的应用
1. 前言 随着移动互联网的发展,越来越多的业务数据和日志数据需要用户处理.从而,用数据去驱动和迭代业务发展.数据处理主要包括:计算和查询.计算主要为离线计算.实时流计算.图计算.迭代计算等:查询主要 ...
- 分布式缓存系统Redis原理解析
Redis作为内存数据库已经广泛应用于大数据领域,已经成为分布式架构下的基础组件.本文主要介绍了Redis内部的实现原理包括IO模型.内存管理.数据持久化等以及三种集群架构,旨在了解其中的实现机制. ...
- 分布式缓存系统Memcached简介与实践
缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是不够灵 ...
- php分布式缓存系统 Memcached 入门
Memcached 是一个分布式的缓存系统, 但是 Memcachd 到底是什么意思,有什么作用呢?缓存一般用来保存一些经常被存取的数据和资源(例如:浏览器会将访问过的网页会话缓存起来),因为通过缓存 ...
- 分布式缓存系统 Memcached 【转载】
本文转载自 http://www.cnblogs.com/zjneter/archive/2007/07/19/822780.html 缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的 ...
最新文章
- gulp 配置自动化前端开发
- Oracle学习笔记十三 触发器
- nginx+tomcat+redis实现会话共享
- 给hbase增加协处理器报ERROR: org.apache.hadoop.hbase.DoNotRetryIOException:错误
- python爬虫脚本ie=utf-8_python脚本-共享文件爬虫
- Tomcat Firewall JMX RMI
- 逾期后还能消除不良记录吗?
- 31天重构学习笔记19. 提取工厂类
- React Portals与Error Boundaries
- 4.3 Siamese 网络
- 洛谷P2073 送花 [2017年6月计划 线段树01]
- vtk读取.dcm文件(医学影像文件)
- linux文件解压与压缩命令
- 找对英语学习方法的第一本书 PDF 带完整的目录
- php 错误503的原因,CentOS + Apache2.4 + PHP5.6 FPM报503错误
- 中国电信物联网建设全面提速 投入三亿元补贴物联网模块
- python建筑案例_有哪些关于 Python 在建筑中的应用和教程?
- 人脸脸部识别技术_面部识别技术基础
- 分布式、微服务、集群
- 解决catkin_make时出现make[2]: *** No rule to make target ‘/usr/lib/libOpenNI2.so‘, needed by ‘*******‘。