MemcacheQ使用以及与PHP连接
发布时间:2014-08-02 13:36:45
作者:admin
阅读:1240次
转:http://blog.sina.com.cn/s/blog_a0db295e01015erq.html
MemcacheQ的使用方法很简单
一、在shell上连接、增、删、查
1、连接
telnet IP地址 端口
2、set 增加一个信息到队列的尾部
set <queue name> <flags> 0 <message_len>
<put your message body here>
STORED
#示例
#插入第一条数据
set test_queue 0 0 13
first_message
STORED
#插入第二条数据
set test_queue 0 0 8
message2
STORED
注:信息不能大于message_len。大于message_len会报错.message_len以字节为单位。
#超出长度时示例
set test_queue 0 0 2
tes
CLIENT_ERROR bad data chunk
ERROR
#你超出message_len范围后会报错,错误的数据集。
3、查看队列:stats queue
stats queue
STAT test_queue
2/0 # (队列test_queue里面有2条信息,读取了0条)
END
4、 get 从队列的头部查询一条信息并销毁:
get
<queue name
>
VALUE
<queue name
> <flags
> <message_len
>
<your message body will come here
>
END
#示例:
get test_queue
VALUE test_queue
0 13
first_message
END
#可以看出是查询的第一个插入的信息。
#此时再查看队列状态:
stats queue
STAT test_queue
2/1 #(队列test_queue里面有2条信息,读取了1条)
END
5、delete 删除队列
delete <queue name>
#示例:
delete test_queue
DELETED
#此时再查看队列状态:
stats queue
END
#已经删除了。
这么简单?对,就是这么简单。memcache的特性之一 damn simple.
二、与php 连接
注意:和php连接,需要事先安装memcache的php扩展,如未安装,可以点击: linux下安装PHP扩展:Memcache
<?php
header("content-type:text/html;charset=utf-8");
$q = new memcache
();
$q->addServer('127.0.0.1','12202');
$q->setCompressThreshold(1024,0.3);
if(isset($_POST['content'])) {
echo "bytes ", strlen($_POST['content']);
if(!$q->set('post', $_POST['content'] )) {
echo "set failed";
}
}
if(isset($_GET['get'])) {
print_r($q->get('post'));
$q->close();
exit;
}
$q->close();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>写放数据</title>
</head>
<body>
<form action="?" method="post">
输入内容<br />
<textarea name="content" cols="40" rows="10"></textarea>
<input type="submit" value="submit" />
</form>
</body>
</html>
如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术
有疑问联系站长,请联系QQ: