-
在业务逻辑的异步处理,系统解耦,分布式通信以及控制高并发的场景下,消息队列有着广泛的应用。本项目基于Spring的AMQP模块,整合流行的开源消息队列中间件rabbitMQ,实现一个向rabbitMQ添加和读取消息的功能。并比较了两种模式:生产者-消费者模式和发布-订阅模式的区别。AMQP作为比JMS更加高级的消息协议,支持更多的消息路由和消息模式。
-
包含的特性如下:
- 如上图,生产者消费者模型:添加了一个队列,并创建了两个消费者用于监听队列消息,我们发现,当有消息到达时,两个消费者会交替收到消息。这一过程虽然不用创建交换机,但会使用默认的交换机,并用默认的直连(default-direct)策略连接队列;
- 如下图,发布订阅模型,添加两个队列,分别各用一个消费者监听,设置一个交换机,类型为广播(fanout),交换机会将收到的消息广播给所有相连的队列:
- direct直连交换机通信模型,包括一个direct交换机,三个binding,两个队列,两个消费者监听器,消息只会被投入到routingkey一致的队列中
4.topic主题交换机通信,包括一个topic交换机,三个binding,两个队列,两个消费者监听器,消息只会被投入到routingkey能够匹配的队列中,#表示0个或若干个关键字,*表示一个关键字
- 进入http://localhost:8080/Spring-rabbitMQ/demo 可向rabbitMQ发送消息,如下图:
- Spring boot整合Mybatis实现增删改查(支持多数据源)
- Struts2,Hibernate,Spring三大框架的整合实现增删改查
- Spring,SpringMVC和Hibernate的整合实现增删改查
- Spring boot整合activiti工作流引擎实现OA开发
- Spring发布与调用REST风格的WebService
- Spring boot整合Axis调用SOAP风格的web服务
- Spring boot整合Apache Shiro实现RBAC权限控制
- 使用Spring security实现RBAC权限控制
- Spring整合Jasig CAS框架实现单点登录
- Spring boot整合mongoDB文档数据库实现增删改查
- Spring连接Redis实现缓存
- Spring连接图存数据库Neo4j实现增删改查
- Spring boot整合列存数据库hbase实现增删改查
- Spring平台整合消息队列ActiveMQ实现发布订阅、生产者消费者模型(JMS)
- Spring boot整合消息队列RabbitMQ实现四种消息模式(AMQP)
- Spring boot整合kafka 2.1.0实现大数据消息管道
- Spring boot整合websocket实现即时通讯
- Spring security整合oauth2实现token认证
- Spring MVC整合FastDFS客户端实现文件上传
- 23种设计模式,源码、注释、使用场景
- 使用ETL工具Kettle的实例
- Git指南和分支管理策略
- 使用数据仓库进行OLAP数据分析(Mysql+Kettle+Zeppelin)
- zookeeper原理、架构、使用场景和可视化
- Spring boot整合Apache dubbo v2.7.5实现分布式服务治理(SOA架构)
包含组件Spring boot v2.2.2+Dubbo v2.7.5+Nacos v1.1.1 效果图
包含组件Nacos+Feign+Gateway+Ribbon+Sentinel+Zipkin 效果图
- 使用jenkins+centos+git+maven搭建持续集成环境自动化部署分布式服务
- 使用docker+compose+jenkins+gitlab+spring cloud实现微服务的编排、持续集成和动态扩容
- 使用FastDFS搭建分布式文件系统(高可用、负载均衡)
- 搭建高可用nginx集群和Tomcat负载均衡
- 使用mycat实现Mysql数据库的主从复制、读写分离、分表分库、负载均衡和高可用
- Spring boot整合Elastic search实现全文检索和大数据分析
包含组件nacos v1.1.0 + seata v0.7.1 +spring boot dubbo v2.7.5 效果图
包含组件nacos v1.1.0 + seata v0.7.1 +spring cloud alibaba v2.1.0 效果图
- 并发控制:数据库锁机制和事务隔离级别的实现
- 并发控制:使用redis实现分布式锁
- 并发控制:使用zookeeper实现分布式锁
- 并发控制:Java多线程编程实例
- 并发控制:使用netty实现高性能NIO通信
- 第一讲:技术架构演进史和分布式系统
- 第二讲 分布式服务治理(SOA和微服务)的搭建方法
- 第三讲:分布式事务的原理和实现(事务消息、TCC、seata)
- 第四讲:消息队列的使用讲解(activeMQ、rabbitMQ,kafka)
- 第五讲:分布式锁的三种实现(zookeeper、mysql、redis)
- 第六讲:elastic search全文检索和大数据分析的实现(ELK平台)
- 第七讲:分布式缓存redis、文件系统(fastdfs,hdfs)、数据库(mycat,hbase)和负载均衡(nginx)的原理介绍