RabbitMq 使用 | 第一篇:安装和Hello World
2018-02-09 17:39
615 查看
RabbitMq 使用 | 第一篇:安装和Hello World
记录RabbitMQ官方教程的一些案例
这里使用的系统是
MacOs 10.12.6,其他系统请参考Downloading and Installing RabbitMQ
MacOs使用
HomeBrew安装
brew update brew install rabbitmq
运行RabbitMQ服务
默认情况下Mac系统
RabbitMQ安装在
/usr/loca/sbin目录中,但是这个路径没有添加到环境变量中,所以需要添加环境变量以便更方便启动
RabbitMQ
编辑
.bash_profile或者
.profile文件添加如下内容
PATH=$PATH:/usr/local/sbin
让
.bash_profile立即生效
source .bash_profile
此时可以选择使用
rabbitmq-server启动服务端。
编写Hello World
在IDEA(Eclipse)创建一个Maven项目,添加如下依赖:<!-- https://mvnrepository.com/artifact/com.rabbitmq/amqp-client --> <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>5.1.2</version> </dependency>
发送端:
public class Send { private final static String QUEUE_NAME = "hello"; public static void main(String[] args) throws IOException, TimeoutException { ConnectionFactory factory = new ConnectionFactory(); factory.setHost("localhost"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); String message = "Hello world"; channel.basicPublish("", QUEUE_NAME, null, message.getBytes()); System.out.println("[x] Sent '" + message + "'"); channel.close(); connection.close(); } }
接收端:
public class Recv { private static final String QUEUE_NAME = "hello"; public static void main(String[] args) throws IOException, TimeoutException { ConnectionFactory factory = new ConnectionFactory(); factory.setHost("localhost"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); Consumer consumer = new DefaultConsumer(channel) { @Override public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException { String message = new String(body, "UTF-8"); System.out.print(" [x] Received '" + message + "'"); } }; channel.basicConsume(QUEUE_NAME, true, consumer); } }
依次启动运行Send.java和Recv.java(顺序不限,前提是RabbitMQ服务已启动)
可以看到输出:
Send.java 输出如下:
[x] Sent 'Hello world'
Recv.java 输出如下:
[*] Waiting for messages. To exit press CTRL+C [x] Received 'Hello world'
此时一个使用
RabbitMQ发送和接收消息的
Demo已经完成
相关文章推荐
- rabbitmq 完整安装 简单配置使用
- 使用nlv进行web开发 —— 第一篇:安装Tengine+LuaJIT
- rabbitmq的安装和使用
- rabbitmq安装使用
- rabbitmq简明使用系列1(服务器安装,配置,管理)
- 【Qwt】详解Qwt安装、使用、示例(2D画图开发库:曲线、滚动条、仪表盘) - 凌晨四点的Hello World - 博客频道 - CSDN.NET
- Hello World:学习安装并使用 Rational Portfolio Manager
- RabbitMQ安装使用详解
- RabbitMQ安装和使用详解(转载+实践)
- ubuntu安装rabbitmq和python的使用实现
- 需要安装 MongoDB,RabbitMQ,或者 MySQL?使用 Docker 来简化开发和测试
- RabbitMQ:安装、配置与使用初探
- linux上安装使用RabbitMQ
- RabbitMq 消息队列的安装、使用 、原理
- rabbitmq第一篇:rabbitmq安装详解
- RabbitMq 安装和 Hello World--.Net
- 第一篇 NOSQL数据库MongoDB数据库的安装使用
- Windows下RabbitMQ使用指南(安装、使用)
- RabbitMQ的安装和及使用
- RabbitMQ安装,配置和使用