日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

windows下安装RabbitMQ消息服务器 + 读写队列

發(fā)布時間:2024/4/17 windows 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 windows下安装RabbitMQ消息服务器 + 读写队列 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?RabbitMQ是什么 ?

?RabbitMQ是一個在AMQP基礎上完整的,可復用的企業(yè)消息系統。他遵循Mozilla Public License開源協議。

1:安裝RabbitMQ需要先安裝Erlang語言開發(fā)包。下載地址?http://www.erlang.org/download.html?在win7下安裝Erlang最好默認安裝。

? ? ? 配置環(huán)境變量?ERLANG_HOME?C:\Program Files (x86)\erl5.9?

? ? ? 添加到PATH ?%ERLANG_HOME%\bin;

2:安裝RabbitMQ 下載地址?http://www.rabbitmq.com/download.html? 安裝教程:http://www.rabbitmq.com/install-windows.html

? ? ? 配置環(huán)境變量?C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-2.8.0

? ? ? 添加到PATH?%RABBITMQ_SERVER%\sbin;

3:進入%RABBITMQ_SERVER%\sbin 目錄以管理員身份運行?rabbitmq-plugins.bat

? ? ?安裝完成之后以管理員身份啟動?rabbitmq-service.bat

4:瀏覽器訪問localhost:55672 ?默認賬號:guest??密碼:guest

?

創(chuàng)建隊列名稱為queue_sina ,java示例代碼讀寫隊列中queue_sina的消息queue_sina

private static final String exchangeName = "sina";

private static final String exchangeRoutingKey = "sina";

HashMap<String,String> map = new HashMap<String,String>();

map.put("text", request.getText());

map.put("image", imageUrl);

map.put("nick_name", this.getUserName(request.getUserid()));

map.put("shop_name", request.getShopname());

String tousu_map = gson.toJson(map, new TypeToken<HashMap<String,String>>(){}.getType());

System.out.println("tousu_map" + tousu_map);

//寫入隊列

Producer.sendMsg(PropsUtils.getInstance().getProperty(Constants.EXCHANGE_NAME,

exchangeName), PropsUtils.getInstance()

.getProperty(Constants.EXCHANGE_ROUTING_KEY,

exchangeRoutingKey), tousu_map);

?

//寫入隊列模版類

public class Producer {

private static AmqpTemplate amqpTemplate = null;

static {

ApplicationContext context = new AnnotationConfigApplicationContext(TousuConfiguration.class);

amqpTemplate = context.getBean(AmqpTemplate.class);

}

public static void sendMsg(String exchangeName,String routingKey,Object message){

amqpTemplate.convertAndSend(exchangeName, routingKey,message);

System.out.println("exchangeName: "+exchangeName);

System.out.println("routingKey: "+routingKey);

System.out.println("Sent : "+message);

}

}

?

//讀取隊列消息

public static void main(String[] args) {

//test?

? ? ? ? try { ?

? ? ? ? ? ??//隊列名稱?PropertiesUtil.QUEUE_NAME=queue_sina

? ? ? ? ? ? String queueName = PropertiesUtil.QUEUE_NAME; ?

? ? ? ? ? ? ConnectionFactory factory = new ConnectionFactory();

? ? ? ? ? ?//PropertiesUtil.HOST =?localhost

? ? ? ? ? ? factory.setHost(PropertiesUtil.HOST);

? ? ? ? ? ?//PropertiesUtil.USER=guest

? ? ? ? ? ? factory.setUsername(PropertiesUtil.USER);

? ? ? ? ? ?//PropertiesUtil.PASS=guest

? ? ? ? ? ? factory.setPassword(PropertiesUtil.PASS);

? ? ? ? ? ?//PropertiesUtil.PORT=5672

? ? ? ? ? ? factory.setPort(Integer.parseInt(PropertiesUtil.PORT));

? ? ? ? ? ? Connection conn = factory.newConnection();

? ? ? ? ? ? Channel channel = conn.createChannel(); ?

? ? ? ? ? ? ??

? ? ? ? ? ? channel.queueDeclare(queueName, true, false, false, null); ?

? ? ? ? ? ? ??

? ? ? ? ? ? QueueingConsumer consumer = new QueueingConsumer(channel); ?

? ? ? ? ? ? channel.basicConsume(queueName, true, consumer); ?

? ? ? ? ? ? ??

? ? ? ? ? ? while(true) { ?

? ? ? ? ? ? ? ? try { ?

? ? ? ? ? ? ? ? ? ? QueueingConsumer.Delivery delivery = consumer.nextDelivery(); ?

? ? ? ? ? ? ? ? ? ? String message = new String(delivery.getBody());

? ? ? ? ? ? ? ? ? ? System.out.println(" [x] Received '" + message + "'");

? ? ? ? ? ? ? ? } catch (ShutdownSignalException e) { ?

? ? ? ? ? ? ? ? ? ? e.printStackTrace(); ?

? ? ? ? ? ? ? ? } catch (InterruptedException e) { ?

? ? ? ? ? ? ? ? ? ? e.printStackTrace(); ?

? ? ? ? ? ? ? ? } ?

? ? ? ? ? ? } ?

? ? ? ? ? ? ??

? ? ? ? } catch (IOException e) { ?

? ? ? ? ? ? e.printStackTrace(); ?

? ? ? ? } ?

}

#Java

轉載于:https://www.cnblogs.com/systemnet123/p/3267967.html

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的windows下安装RabbitMQ消息服务器 + 读写队列的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。