消息从生产到消费

前面的文章中,我们已经能顺利的启动nsq,发布、消费消息了,接下来,再来看看在Java客户端中我们是如何消费一条消息的呢。

这里的消费者我们用Java客户端的例子来模拟实现:


为了方便调试,我将向nsqlookup查询最新nsq信息的时间间隔,由一分钟一次,改为了十秒一次:
com.github.brainlag.nsq.NSQConsumer#lookupPeriod:

因为消息是被转为字节流进行传输的,为了输出看的更清楚,我在NSQMessage里增加了toString方法。

获取到message后调用toString方法输出。

启动
假设消费者最先启动,它要消费topic为”order_created“的消息,这时候它向nsqlookup调用/lookup接口,试图获取对应topic的nsq。由于nsqlookup还没启动,因此获取失败,不过这并不影响消费者的启动流程,因为它会每隔一段时间,去尝试重新拉取最新的数据。

接下来我们启动nsqlookup和nsqd,创建相应的topic和channel,并且生产者向nsq发布了topic为”order_created“的消息
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 介绍 最近在研究一些消息中间件,常用的MQ如RabbitMQ,ActiveMQ,Kafka等。NSQ是一个基...
    aoho阅读 12,913评论 1 16
  • 计算机网络概述 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输。 按照计算机网络的定义,通过一定...
    蛋炒饭_By阅读 5,008评论 0 10
  • http://liuxing.info/2017/06/30/Spring%20AMQP%E4%B8%AD%E6%...
    sherlock_6981阅读 16,157评论 2 11
  • 01 一天晚上凌晨,朋友和我一起讨论价值和价格的逻辑关系。周围静悄悄的,只听的到我哒哒的键盘打字的声音。 大约凌晨...
    韩小仙儿阅读 4,101评论 3 3
  • 人员选育流程比战略或运营实施流程都更为重要,因为人的因素都是至关重要的。人员选育流程是在战略和运营之间建立联系。 ...
    像荼蘼一样阅读 4,342评论 2 11

友情链接更多精彩内容