堵了?那就绕行.
持久化消息队列memcacheq(简称mcq)是一个轻量级的消息队列。mcq依赖于Berkeley DB和libevent。Berkeley DB用于持久化存储队列的数据,避免在mcq崩溃或这服务器当掉时候,不至于数据丢失。
特性:
1.damn simple (简单易用)
2.very fast (处理速度快)
3.multiple queue (多条队列)
4.concurrent well (并发性能好)
5.memcache protocol compatible (与memcache的协议兼容)
使用场景:高并发、数据可以弱一致性.(有待添加,欢迎提出各自应用的场景).
mcq的方法:set、get、delete
1.set 增加一个信息到队列的尾部:
set <queue name> <flags> 0 <message_len>\r\n(回车)
<put your message body here>\r\n(回车)
STORED\r\n
例:
set test_queue 0 0 2
te
STORED
set test_queue 0 0 3
tes
STORED
注:信息不能大于message_len。大于message_len会报错.message_len以字节为单位。
set test_queue 0 0 2
tes
CLIENT_ERROR bad data chunk
ERROR
注:你超出message_len范围后会报错,错误的数据集。
查看队列:stats queue
stats queue
STAT test_queue 2/0 (队列test_queue里面有2条信息,读取了0条)
END
2. get 从队列的头部查询一条信息并销毁:
get <queue name>\r\n
VALUE <queue name> <flags> <message_len>\r\n
<your message body will come here>\r\n
END\r\n
例:
get test_queue
VALUE test_queue 0 2
te
END
可以看出是查询的第一个插入的信息。
查看队列:stats queue
stats queue
STAT test_queue 2/1 (队列test_queue里面有2条信息,读取了1条)
END
3.delete 删除队列
delete <queue name>
例:
delete test_queue
DELETED
查看队列:
stats queue
END
已经删除了。
这么简单?对,就是这么简单。mcq的特性之一 damn simple.
安装memcached及memcacheq: http://www.cnblogs.com/sunzy/archive/2012/04/13/2446234.html
持久化消息队列memcacheq(简称mcq)是一个轻量级的消息队列。mcq依赖于Berkeley DB和libevent。Berkeley DB用于持久化存储队列的数据,避免在mcq崩溃或这服务器当掉时候,不至于数据丢失。
特性:
1.damn simple (简单易用)
2.very fast (处理速度快)
3.multiple queue (多条队列)
4.concurrent well (并发性能好)
5.memcache protocol compatible (与memcache的协议兼容)
使用场景:高并发、数据可以弱一致性.(有待添加,欢迎提出各自应用的场景).
mcq的方法:set、get、delete
1.set 增加一个信息到队列的尾部:
set <queue name> <flags> 0 <message_len>\r\n(回车)
<put your message body here>\r\n(回车)
STORED\r\n
例:
set test_queue 0 0 2
te
STORED
set test_queue 0 0 3
tes
STORED
注:信息不能大于message_len。大于message_len会报错.message_len以字节为单位。
set test_queue 0 0 2
tes
CLIENT_ERROR bad data chunk
ERROR
注:你超出message_len范围后会报错,错误的数据集。
查看队列:stats queue
stats queue
STAT test_queue 2/0 (队列test_queue里面有2条信息,读取了0条)
END
2. get 从队列的头部查询一条信息并销毁:
get <queue name>\r\n
VALUE <queue name> <flags> <message_len>\r\n
<your message body will come here>\r\n
END\r\n
例:
get test_queue
VALUE test_queue 0 2
te
END
可以看出是查询的第一个插入的信息。
查看队列:stats queue
stats queue
STAT test_queue 2/1 (队列test_queue里面有2条信息,读取了1条)
END
3.delete 删除队列
delete <queue name>
例:
delete test_queue
DELETED
查看队列:
stats queue
END
已经删除了。
这么简单?对,就是这么简单。mcq的特性之一 damn simple.
安装memcached及memcacheq: http://www.cnblogs.com/sunzy/archive/2012/04/13/2446234.html