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#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值