Beanstalkd工作队列
Beanstalkd 是什么
Beanstalkd是目前一个绝对可靠,易于安装的消息传递服务,主要用例是管理不同部分和工人之间的工作流应用程序的部署通过工作队列和消息堆栈,类似于其他受欢迎的解决方案,比如RabbitMQ。然而,创建Beanstalkd使它有别于其他工作。Beanstalkd旨在成为一个工作队列,而不是一把雨伞工具来满足许多需求。为了实现这一目的,它作为一种轻量级的、快速有效的应用程序基于C编程语言。精益建筑还允许它是安装和使用非常简单,使它适合大多数用例。
Beanstalkd 的 Features(特性)
持久性:Beanstalkd运行使用内存,但也提供了持久性支持。
优先级:与大多数选择一样,Beanstalkd提供了不同的任务的优先级来处理紧急事情时需要。
分布 : 不同的服务器实例可以分布类似于Memcached是如何工作的。
掩盖 :有可能通过掩盖它无限期延期的作业(即任务)。
第三方工具:Beanstalkd附带各种第三方工具包括综合领先指标和基于web的管理控制台。
.过期 :工作可以设置为过期,auto-queue之后(TTR – Time To Run)
Beanstalkd使用案例
允许web服务器快速响应请求,而不是被迫当场曾推高程序执行
在指定的时间间隔执行某些工作(即爬行web)
分发到多个工作人员进行处理
让离线客户端(例如一个断开连接的用户)获取数据在稍后的时间,而不是让它永久失去
极大地提高应用程序的可靠性和正常运行时间
Beanstalkd 的安装
################# 第一种安装方法,但是要安装git
yum install -y git
git clone https://github.com/kr/beanstalkd
cd beanstalkd
make
make install
################### 第二种源码安装
wget http://cloud.github.com/downloads/kr/beanstalkd/beanstalkd-1.4.6.tar.gz
tar xzf beanstalkd-1.4.6.tar.gz
cd beanstalkd-1.4.6
./configure
make
make instal
############# 查看安装的版本
beanstalkd -v
Beanstalkd 的使用
使用说明
# Usage: beanstalkd -l [ip address] -p [port #]
beanstalkd -l 127.0.0.1 -p 11301 &
# ip可以使用这台机器的ip,端口可以更改;
#如果想切换到后台运行:
nohup beanstalkd -l 127.0.0.1 -p 11301 &
#----------------------------如果不适用源文件安装的启动
# To start the service:
service beanstalkd start
# To stop the service:
service beanstalkd stop
# To restart the service:
service beanstalkd restart
# To check the status:
service beanstalkd status