rabbitMQ 测试 全过程

来源:互联网 发布:淘宝上门取件收费标准 编辑:程序博客网 时间:2024/05/04 16:26

这里先介绍一下 rabbitmq 用到的包的 路径 

下载erlang支持包:http://www.erlang.org/download.html 

下载rabbitmq server:http://www.rabbitmq.com/releases/rabbitmq-server/

下载RabbitMQ client:http://www.rabbitmq.com/releases/rabbitmq-java-client/或者在http://www.rabbitmq.com/java-client.html


说道测试呢 , 我先简单介绍一下, 我是在 Linux 虚拟机上进行测试的, 说道linux 很多新手 会觉着 很头疼, 一大堆的命令,的确如此,不过谁都有第一次,加油各位

言归正传   步骤如下

1、首先在 linux 服务器上 需要 配置 erlang  和 rabbitmq 环境 , 我上面的文章已经讲述了,大家可以看一看

2、在本地myeclipse中 创建两个类

1)

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. package com.abin.test;  
  2.   
  3. import com.rabbitmq.client.Channel;  
  4. import com.rabbitmq.client.Connection;  
  5. import com.rabbitmq.client.ConnectionFactory;  
  6. import com.rabbitmq.client.QueueingConsumer;  
  7.    
  8. public class Recv {  
  9.    
  10.     //消息队列名称   
  11.     private final static String QUEUE_NAME="hello";  
  12.        
  13.     public static void main(String[] args)  throws java.io.IOException,java.lang.InterruptedException{  
  14.            
  15.         //创建链接工厂  
  16.         ConnectionFactory factory = new ConnectionFactory();  
  17.         factory.setHost("localhost");  
  18.         //创建链接  
  19.         Connection connection = factory.newConnection();  
  20.            
  21.         //创建消息信道  
  22.         Channel channel = connection.createChannel();  
  23.            
  24.         //生命消息队列  
  25.         channel.queueDeclare(QUEUE_NAME,false,false,false,null);  
  26.         System.out.println("[*] Waiting for message. To exist press CTRL+C");  
  27.            
  28.         //消费者用于获取消息信道绑定的消息队列中的信息  
  29.         QueueingConsumer consumer = new QueueingConsumer(channel);  
  30.            
  31.         channel.basicConsume(QUEUE_NAME, true,consumer);  
  32.            
  33.         while(true){  
  34.                
  35.             //循环获取消息队列中的信息  
  36.             QueueingConsumer.Delivery delivery = consumer.nextDelivery();  
  37.             String message = new String(delivery.getBody());  
  38.             System.out.println("[x] Received '"+message+"'");  
  39.                
  40.         }  
  41.            
  42.     }  
  43.        
  44. }  
2)

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. package com.abin.test;  
  2.   
  3. import com.rabbitmq.client.Channel;  
  4. import com.rabbitmq.client.Connection;  
  5. import com.rabbitmq.client.ConnectionFactory;  
  6.           
  7.           
  8. public class Send {  
  9.           
  10.     //消息队列名称  
  11.     private final static String QUEUE_NAME="hello";  
  12.           
  13.     public static void main(String[] args)  throws java.io.IOException{  
  14.           
  15.         //创建链接工程  
  16.         ConnectionFactory factory = new ConnectionFactory();  
  17.         factory.setHost("localhost");  
  18.         //创建链接  
  19.         Connection connection = factory.newConnection();  
  20.           
  21.         //创建消息通道  
  22.         Channel channel = connection.createChannel();  
  23.           
  24.         //生命一个消息队列  
  25.         channel.queueDeclare(QUEUE_NAME, false, false, false, null);  
  26.           
  27.         String message = "Hello World";  
  28.           
  29.         //发布消息,第一个参数表示路由(Exchange名称),未""则表示使用默认消息路由  
  30.         channel.basicPublish("", QUEUE_NAME, null, message.getBytes());  
  31.           
  32.         System.out.println(" [x] Sent '"+message+"'");  
  33.           
  34.        //关闭消息通道和链接  
  35.         channel.close();  
  36.         connection.close();  
  37.           
  38.     }  
  39.           
  40. }  

好的 ,  你把 两个类 放到  myeclipse中时 会报很多错,  大家肯定知道 少包啊, 没错   这里给大家提供路径

下载RabbitMQ client:http://www.rabbitmq.com/releases/rabbitmq-java-client/或者在http://www.rabbitmq.com/java-client.html 

下载玩 这个 rabbitmq-Java-client-bin-3.0.4.zip 这个包之后  解压, 把 包中的 所有包 都 解压到项目中,你会发现XX没了。

好的 我们继续

这时候我们需要将 本地的 项目 传到linux虚拟机上,  我们先到myeclipse的根目录中找到 bin 路径(里面都是class文件) 然后把bin打成 后缀名为zip的包

然后我们传到 虚拟机上 命令如下:    rz -y   

好的比如我们传到了  /user/local    这个目录下了,然后我们解压这个zip文件  命令如下:unzip bin.zip        OKzip文件解压完毕

然后我们在到 myeclipse根目录中找到 我们导入的包(也就是让你们下载 client中的包)  , 最好创建个文件夹,我这里叫lib,同样上传到linux虚拟机上路径也是/user/local

好的  完事具备 只欠东风   , 我们怎么运行呢?   我们需要 自己写个脚本去运行

脚本如下  注视已经写好 , 你们因该可以看懂

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. #!/bin/sh    
  2. LIBS_DIR=项目所用包的地址/lib                                               //这里的项目所用包的地址是  项目所用到的包  , 通常我们放到lib中 ,   
  3. for i in $LIBS_DIR/*.jar  
  4. do CLASSPATH=$i:"$CLASSPATH"  
  5. done  
  6.   
  7.   
  8.        
  9. SERVER=项目地址                //这里的项目地址是    你将bin文件放入 linux服务器中的地址  
  10.   
  11.   
  12. cd $SERVER/bin      //这里的 bin 意思是  绑定到了  bin这个文件夹下, 也就是说你把myeclipse工程中的bin文件夹复制到服务器上就可以了,里面是class类  
  13.         
  14. java -Xms512m -Xmx1024m  -classpath $CLASSPATH com.abin.test.Send                       
  15. //这里的com.abin.test.Send是  包的名字  也就是 java类中 package com.abin.test;  ,然后这里的Send表示类的名字,我们先运行Send类在运行Recv类, 会发现  队列 被 输出  

然后 就运行脚本 , 命令如下  sh run.sh

运行顺序  先运行 Send   在 运行 Recv

0 0
原创粉丝点击