linux 搭建任务队列集群,beanstalkd任务队列 linux平台安装测试
client-libraries https://github.com/kr/beanstalkd/wiki/client-libraries
1,安裝?beanstalkd
sudo?apt-get?install?beanstalkd
啟動:chunli@linux:~$?sudo?/etc/init.d/beanstalkd?start
關停:chunli@linux:~$?sudo?/etc/init.d/beanstalkd?stop
2,安裝客戶端庫
git?clone?https://github.com/li-chunli/beanstalk-client
cd?beanstalk-client/
一個例子:
root@linux:~/beanstalk/beanstalk-client#?cat?example.c
#include?"beanstalk.h"
#include?
#include?
int?main()?{
BSJ?*job;
int?id,?socket?=?bs_connect("127.0.0.1",?11300);
assert(socket?!=?BS_STATUS_FAIL);
assert(bs_use(socket,????"test")????==?BS_STATUS_OK);
assert(bs_watch(socket,??"test")????==?BS_STATUS_OK);
assert(bs_ignore(socket,?"default")?==?BS_STATUS_OK);
id?=?bs_put(socket,?0,?0,?60,?"hello?Linux?",?11);
assert(id?>?0);
printf("put?job?id:?%d\n",?id);
assert(bs_reserve_with_timeout(socket,?2,?&job)?==?BS_STATUS_OK);
assert(job);
printf("reserve?job?id:?%ld?size:?%lu\n",?job->id,?job->size);
write(fileno(stderr),?job->data,?job->size);
write(fileno(stderr),?"\r\n",?2);
printf("delete?job?id:?%ld\n",?job->id);
assert(bs_delete(socket,?job->id)?==?BS_STATUS_OK);
bs_free_job(job);
bs_disconnect(socket);
}
root@linux:~/beanstalk/beanstalk-client#
編譯運行,libbeanstalk.so動態庫就在當前目錄下,自己添一行到/etc/ld.so.conf.d/libc.conf ,更新ldconfig -v
root@linux:~/beanstalk/beanstalk-client#?gcc?example.c?-L.??-lbeanstalk?&&?./a.out
put?job?id:?1
reserve?job?id:?1?size:?11
hello?Linux
delete?job?id:?1
root@linux:~/beanstalk/beanstalk-client#?gcc?example.c?-L.??-lbeanstalk?&&?./a.out
put?job?id:?2
reserve?job?id:?2?size:?11
hello?Linux
delete?job?id:?2
root@linux:~/beanstalk/beanstalk-client#
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的linux 搭建任务队列集群,beanstalkd任务队列 linux平台安装测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 实时功能,linux – 什
- 下一篇: 存折现金销户是什么意思