ThreadPoolExecutor + RabbitMQ

对于一个基于消息驱动的应用,线程池和消息队列总是少不了的。线程池ThreadPoolExecutor是Java自带的,利用线程池来生产/消费消息。消息队列有很多选择,这里先尝试一下RabbitMQ


1,安装RabbitMQ服务

yum install erlang

yum install rabbitmq-server

因为RabbitMQ是Erlang开发的,故安装过程将安装一些Erlang环境


2,配置RabbitMQ服务

一般RabbitMQ的默认配置即可工作,如需个性化设置可以参考http://www.rabbitmq.com/configure.html

RabbitMQ默认服务端口为5672,需要在防火墙中将此端口开放,以免其他机器上的client无法访问


3,RabbitMQ服务

service rabbitmq-server start

service rabbitmq-server stop

RabbitMQ服务的管理可以参考 http://www.rabbitmq.com/admin-guide.html


4,下载RabbitMQ的Java client包

http://www.rabbitmq.com/java-client.html


5,编写测试程序

略......


6,测试结果

Consumers和Products分别跑在同一WLAN网络中不同机器上,利用线程池起了4对Consumer/Product,每对Consumer共产生/消费100W条消息(消息长度约56字节)

通过400W条消息来测试一下RabbitMQ的稳定性和性能

Product0 cost : 981.517

Product1 cost : 993.353

Product3 cost : 1008.149

Product2 cost : 1010.612


RabbitMQ真的蛮简单,I like it!



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值