文章 2022-02-17 来自:开发者社区

CentOS6.9安装RabbitMQ和源码编译安装php的RabbitMQ扩展

1.安装依赖 yum install make gcc gcc-c++ build-essential openssl openssl-devel unixODBC unixODBC-devel kernel-devel m4 ncurses-devel 2.安装Erlang 查看yum中Erlang版本 yum list erlang erlang.x86_64 R14B-04...

文章 2022-02-17 来自:开发者社区

【直播预告】:Java Spring Boot开发实战系列课程【第11讲】:消息中间件 RabbitMQ 与api源码解析

内容概要:mq消息中间件在高并发系统架构中扮演关键角色,阿里双11高并发使用了mq技术。本次课程一起学习最新Java Spring Boot 2.0、RabbitMQ中间件的最新特性与实战应用,同样会分析核心api源码。主讲人:徐雷(阿里云栖特邀Java专家)直播时间:2019年1月8日 周二 今晚20:00直播地点:【阿里Java技术进阶】钉钉群详情请看下方图片:想看免费直播的提前扫码入群,或....

文章 2022-02-16 来自:开发者社区

[四]RabbitMQ-客户端源码之Frame

Frame是指AMQP协议层面的通信帧(一个正式定义的连接数据包)。 我们来看下Frame类中的成员变量有哪些: /** Frame type code */ public final int type; /** Frame channel number, 0-65535 */ public final int channel; /** Frame payload bytes (fo...

文章 2022-02-16 来自:开发者社区

[三]RabbitMQ-客户端源码之ChannelManager

关于ChannelManager,官方注解:Manages a set of channels, indexed by channel number (1.. _channelMax)。 ChannelManager类的代码量不是很多,主要用来管理Channel的,channelNumber=0的除外,应为channelNumber=0是留给Connection的特殊的channelNumbe.....

文章 2022-02-16 来自:开发者社区

[二]RabbitMQ-客户端源码之AMQConnection

上一篇文章([一]RabbitMQ-客户端源码之ConnectionFactory)中阐述了conn.start()方法完成之后客户端就已经和broker建立了正常的连接,而这个Connection的关键就在于这个start()方法之内,下面我们来慢慢分析。 首先来看看start()方法的源码,这个方法有点长,这里拆开来一一分析,首先是注释: /** * Start up the conn...

文章 2022-02-16 来自:开发者社区

[一]RabbitMQ-客户端源码之ConnectionFactory

首先看一段amqp-client发送端的示例代码(展示出主要部分): ConnectionFactory factory = new ConnectionFactory(); factory.setHost(ip); factory.setPort(5672); factory.setUsername("root"); factory.setPassword("root"); Connec...

文章 2022-02-16 来自:开发者社区

[Conclusion]RabbitMQ-客户端源码之总结

RabbitMQ遵从的是AMQP协议,其broker端代码采用erlang编写,对于没有接触过erlang的同学(包括博主我)来说,想要了解其中的奥秘实在是不容易,大多只能从网上“搜刮”点散碎的知识点来充实一下。但是这样是不能究其然,更不能究其所以然。博主这里翻阅了amqp-client的java客户端的源码,通过其来学习下AMQP协议,进而更深刻的了解RabbitMQ. 注:如无特殊说...

文章 2022-02-16 来自:开发者社区

[九]RabbitMQ-客户端源码之Consumer

在[八]RabbitMQ-客户端源码之ChannelN中讲述basicConsume的方法时设计到Consumer这个回调函数,Consumer其实是一个接口,真正实现它的是QueueingConsumer和DefaultConsumer,且DefaultConsumer是QueueingConsumer的父类,里面都是空方法。在用户使用时可以简单的采用QueueingConsumer或者采用D....

文章 2022-02-16 来自:开发者社区

[八]RabbitMQ-客户端源码之ChannelN

ChannelN是整个RabbitMQ客户端最核心的一个类了,其包含的功能点甚多,这里需要分类阐述。 首先来看看ChannelN的成员变量: private final Map<String, Consumer> _consumers = Collections.synchronizedMap(new HashMap<String, Consumer>()); p...

文章 2022-02-16 来自:开发者社区

[七]RabbitMQ-客户端源码之AMQPImpl+Method

AMQPImpl类包括AMQP接口(public class AMQImpl implements AMQP)主要囊括了AMQP协议中的通信帧的类别。 这里以Connection.Start帧做一个例子。 public static class Connection { public static final int INDEX = 10; public static ...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。