Memcache使用基础
Memcached的特点:
协议简单
基于libevent的事件处理
内置内存存储方式
memcached不互相通信的分布式
1.协议简单:
使用简单的基于文本的协议,因而通过telnet也能在memcached上保存数据、取得数据
2.基于libevent:
将Linux等操作系统事件处理功能封装成统一的接口,能在Linux、BSD等操作系统上发挥其高性能
3.内置内存存储方式:
为了提高性能,memcached中保存的数据都存储在memcached内置的存储空间中,如果内容容量达到指定的值以后,就基于LRU(Least Recently Used)算法自动删除不使用的缓存
4.memcached不互相通信的分布式
memcached服务器端并没有分布式功能。各个memcached不会互相通信以共享信息,分布式完全取决于客户端的实现
Linux下memcached的安装:
sudo yum install libevent libevent-deval
wget http://ip/xxxxx
tar zxf memcached-version.tar.gz
cd memcached-version
./configure
make
sudo make install
memcached的启动:
/usr/local/bin/memcached -p 11211 -m 64m -vv
选项说明:
选项 说明
-p 使用TCP端口,默认为11211
-m 最大内存大小,默认为64m
-vv 用very vrebose模式启动,调试信息和错误输出到控制台
-d 作为daemon在后台启动
-h 帮助
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect"); $version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n"; $tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123; $memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n"; $get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n"; var_dump($get_result);
?>
memcache保存数据的方法有:
add
replace
set
使用方法:
$add = $memcache->add('键','值','期限');
$replace = $memcache->replace('键','值','期限');
$set = $memcache->set('键','值','期限');
memcache获取数据的方法:
get
使用方法:
$getResult = $memcache->get('键');
var_dump($getResult);
Memcache使用基础的更多相关文章
- Memcache教程 Memcache零基础教程
Memcache是什么 Memcache是danga.com的一个项目,来分担数据库的压力. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工作机制是在内存中开辟一块空间,然后建立一个Hash ...
- 从源码角度理清memcache缓存服务
memcache作为缓存服务器,用来提高性能,大部分互联网公司都在使用. 前言 文章的阅读的对象是中高级开发人员.系统架构师. 本篇文章,不是侧重对memcache的基础知识的总结,比如se ...
- PHP中的数据库三、redis
h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h ...
- Redis 在新浪微博中的应用
Redis 在新浪微博中的应用 Redis简介 1. 支持5种数据结构 支持strings, hashes, lists, sets, sorted setsstring是很好的存储方式,用来做计数存 ...
- yii 缓存探究
1.在配置文件中 //在权威指南上是'cache' 其实可以根据不同的缓存组件起不同的名称 //memcache缓存 'memcache' => array( 'class' => 'sy ...
- OpenStack中memcached的使用和实现
概述 主要分享下个人对Liberty版本openstack中cache使用的理解,由于作者水平有限,难免有所错误,疏漏,还望批评指正. openstack中可以使用cache层来缓存数据,Libert ...
- 【转载】Redis在新浪微博中的应用
转载自文章 http://blog.me115.com/2013/12/19/redis-e5-9c-a8-e6-96-b0-e6-b5-aa-e5-be-ae-e5-8d-9a-e4-b8-ad-e ...
- redis用法分析
redis基本介绍 redis也是一个内存非关系型数据库,它拥有memcache在数据存储上的全部优点,而且在memcache的基础上增加了数据持久性功能,redis用rdb和aof两种方式实现数据持 ...
- Memcache基础教程
Memcache是什么 Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力. 它可以应 ...
随机推荐
- Pycharm 设置TextStyle
之前在脚本中选择了一个字符串, PyCharm会"高亮"所有相同的字符串, 但是我不满意这个"高亮"的颜色,因为和背景色太相似了,所以需要做一下操作,修改这个& ...
- uoj#36. 【清华集训2014】玛里苟斯(线性基+概率期望)
传送门 为啥在我看来完全不知道为什么的在大佬们看来全都是显然-- 考虑\(k=1\)的情况,如果序列中有某一个\(a_j\)的第\(i\)位为\(1\),那么\(x\)的第\(i\)位为\(1\)的概 ...
- C 语言实例 - 斐波那契数列
C 语言实例 - 斐波那契数列 斐波那契数列指的是这样一个数列 , , , , , , , , , , , , ,,,,,,,,,,,........ 这个数列从第3项开始,每一项都等于前两项之和. ...
- wcf双工通信
一直以为感觉双工没弄懂,着实觉得很惆怅,在网上了解下双工的一些特点,直接上代码,以便以后项目中用的着: service层: 定义一个IDuplexHello服务接口 [ServiceContract( ...
- Junit使用总结
对Junit的使用总结,后期会更新! 1.做自动单元测试用的,在方法前面加一个@Test(准备 一个测试用例),这是必须要加上的. 判定是成功还是失败. 最后是加一个断点,Assert.assertE ...
- 小知识点:linux下的mv命令怎么用?
linux下的mv命令怎么用? mv a.txt b.txt 将a.txt 改名为b.txtmv a.txt /mnt/b.txt 同时更改路径为/mnt/mv a.txt /opt/ftp/ ...
- 关于java后台接入百度地图返回参数为{"status":211,"message":"APP SN校验失败"}的解决方法
1.关于百度地图,天气预报,微信公众平台等一系列权威机构java接入的认识: a.首先要认识到的是这些信息都属于外部接口,我们在进行接入的时候一定要注意到这些接口的参数设置,稍微一不留神就会出现接入失 ...
- CC18:二叉树平衡检查
题目 实现一个函数,检查二叉树是否平衡,平衡的定义如下,对于树中的任意一个结点,其两颗子树的高度差不超过1. 给定指向树根结点的指针TreeNode* root,请返回一个bool,代表这棵树是否平衡 ...
- Eclipse Photon 小技巧(tips)
本文内容: Eclipse 4.8版本 代号 photon 光量子 ,感觉更像ide了,虽然这些技巧广为认知,但是作为eclipse来说,也是很重要的. Code completion allows ...
- TYVJ P2032 「Poetize9」升降梯上 spfa最短路
%%%暴搜出奇迹%%%@SiriusRen 其实我刚开始题读错了,才导致我写图论... spfa跑最短路,开一个node记录状态(pair当然滋磁):所在楼层和槽的位置 以层数为1,槽在0的位置 为初 ...