首页 > 代码库 > Rabbitmq基本框架和安装(1)

Rabbitmq基本框架和安装(1)

Rabbitmq简介、特点、使用场景:

1.1)RabbitMQ是一个遵循AMQP协议的消息中间件,它从生产者接收消息并递送给消费者,在这个过程中,根据规则进行路由,缓存与持久化。

1.2)AMQP(Advanced Message Queuing Protocol)

高级消息队列协议,应用层协议的一个开放标准,为面向消息的中间件设计。AMQP是一个提供统一消息服务的应用层标准协议,基于此协议的客户端与消息中间件可传递消息,并不受不同客户端/中间件产品,不同开发语言等条件的限制。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。

1.3)RabbitMQ的特性:

 可靠性:包括消息持久化,消费者和生产者的消息确认

 灵活路由:遵循AMQP协议,支持多种Exchange类型实现不同路由策略

 分布式:集群的支持,包括本地网络与远程网络

 高可用性:支持主从备份与镜像队列

 多语言支持:支持多语言的客户端

 WEB界面管理:可以管理用户权限,exhange,queue,binding,与实时监控

 访问控制:基于vhosts实现访问控制

 调试追踪:支持tracing,方便调试

1.4)Rabbitmq使用场景:

单发送单接收,单发送多接收,Publish/Subscribe等

Rabbitmq用yum方式安装:

1、准备epel的yuam源,并导入key(根据自己的系统获取指定版本)

#官网https://fedoraproject.org/wiki/EPEL/zh-cn
wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

2、安装需要的依赖程序

yum install erlang -y

3、安装rabbitmq公钥,然后安装rabbitmq

rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
yum install rabbitmq-server -y 
#也可以安装指定版本

4、设置开机自启并启动rabbitmq

chkconfig rabbitmq-server on
/etc/init.d/rabbitmq-server start

5、检查服务启动状况

[root@rabbitmq ~]# netstat -atupn|grep 5672
tcp        0      0 :::5672                     :::*                        LISTEN      7653/beam           
[root@rabbitmq ~]#

[root@rabbitmq ~]# ps aux|grep rabbitmq|grep -v grep
rabbitmq   7624  0.0  0.0  10828   472 ?        S    09:12   0:00 /usr/lib64/erlang/erts-5.8.5/bin/epmd -daemon
root       7630  0.0  0.1 106420  1192 pts/6    S    09:12   0:00 /bin/sh /etc/init.d/rabbitmq-server start
root       7635  0.0  0.1 106056  1300 pts/6    S    09:12   0:00 /bin/bash -c ulimit -S -c 0 >/dev/null 2>&1 ; /usr/sbin/rabbitmq-server
root       7637  0.0  0.1 106056  1360 pts/6    S    09:12   0:00 /bin/sh /usr/sbin/rabbitmq-server
root       7651  0.0  0.1 145468  1776 pts/6    S    09:12   0:00 su rabbitmq -s /bin/sh -c /usr/lib/rabbitmq/bin/rabbitmq-server 
rabbitmq   7653  0.3  3.1 582164 31236 ?        Ssl  09:12   0:00 /usr/lib64/erlang/erts-5.8.5/bin/beam -W w -K true -A30 -P 1048576 -- -root /usr/lib64/erlang -progname erl -- -home /var/lib/rabbitmq -- -pa /usr/lib/rabbitmq/lib/rabbitmq_server-3.1.5/sbin/../ebin -noshell -noinput -s rabbit boot -sname rabbit@rabbitmq -boot start_sasl -kernel inet_default_connect_options [{nodelay,true}] -sasl errlog_type error -sasl sasl_error_logger false -rabbit error_logger {file,"/var/log/rabbitmq/rabbit@rabbitmq.log"} -rabbit sasl_error_logger {file,"/var/log/rabbitmq/rabbit@rabbitmq-sasl.log"} -rabbit enabled_plugins_file "/etc/rabbitmq/enabled_plugins" -rabbit plugins_dir "/usr/lib/rabbitmq/lib/rabbitmq_server-3.1.5/sbin/../plugins" -rabbit plugins_expand_dir "/var/lib/rabbitmq/mnesia/rabbit@rabbitmq-plugins-expand" -os_mon start_cpu_sup false -os_mon start_disksup false -os_mon start_memsup false -mnesia dir "/var/lib/rabbitmq/mnesia/rabbit@rabbitmq"
rabbitmq   7732  0.0  0.0  10792   532 ?        Ss   09:12   0:00 inet_gethost 4
rabbitmq   7733  0.0  0.0  17120   816 ?        S    09:12   0:00 inet_gethost 4
[root@rabbitmq ~]#


本文出自 “永不放弃! 任志远” 博客,请务必保留此出处http://renzhiyuan.blog.51cto.com/10433137/1883022

Rabbitmq基本框架和安装(1)