-
Java开发中的消息队列相关问题处理
作者: 陆金龙 发表时间: 2023-01-08 07:53关键词:RabbitMQ高可用 Kafka高可用 消息队列重复消费 消息丢失 消息队列积压内容基于石杉码农学院的石杉老师的视频整理。 1.理解集群、分布式 集群是指多台服务器集中在一起,实现同一业务。 分布式是指将不同的业务,分布在不同的机器上执行。 分布式的每一个节点,都可以做集群,而集群并不一定就是分布式的。 2.如何保证消息队列的高可用性 如何保证消息队列的高可用。如果MQ挂了怎么办? 2.1 RabbitMQ实现高可用 RabbitMQ:不是分布式的。 RabbitMQ有单机模式(生产环境不会这么用),普通集群模式,镜像集群模式。 普通集群模式原理:多台机器部署多个RabbitMQ实例,队列分配... -
Java开发中的消息队列及选型
作者: Kinglong 发表时间: 2022-12-25 21:51关键词:RabbitMQ RocketMQ Kafka1.为什么要使用消息队列 使用消息队列,比较核心的目的有3个:解耦、异步、削峰。 解耦:以松耦合的方式实现系统之间的通信,保障各系统之间的独立性,更方便、灵活地实现系统的扩展和变更。 异步:将任务中的耗时步骤交给MQ及消息订阅模块处理,避免阻塞,提高响应速度。 削峰:将短暂的高峰期请求积压在MQ中,然后以数据库能够承受的速度从消息队列中逐渐拉取出来进行处理。将并发请求高峰时段的压力由数据库IO操作转移到MQ中,避免服务器因为超负荷请求而崩溃。 2.使用消息队列会面临哪些问题 (1)系统可用性降低:如果MQ挂掉,造成整套系统崩溃。 (2)系... -
Spring Boot集成RabbitMQ
作者: 陆金龙 发表时间: 2022-04-14 15:131.internalRabbitListenerEndpointRegistry 监听服务启动失败,报错如下: Failed to start bean 'org.springframework.amqp.rabbit.config.internalRabbitListenerEndpointRegistry'; nested exception is org.springframework.amqp.AmqpIllegalStateException: Fatal exception on listener startup at org.spr... -
Spring框架的AOP
作者: 陆金龙 发表时间: 2022-04-06 19:48关键词:AspectJ 动态代理 InvocationHandlerAOP就是实现横切的工具。有静态和动态两种不同的AOP。Spring AOP实现了其他完整的AOP实现的部分功能。 1.AOP相关概念 连接点(JointPoint):用来定义在程序的哪里通过AOP加入新的逻辑。典型的联结点有:调用一个方法、类初始化、对象初始化等。 通知(Advice):在某特定的连接点处运行的代码称为通知。有在连接点之前执行的前置通知、在连接点之后执行的后置通知等。 切入点(PointCut):切入点是一组连接点,定义某一个通知该何时执行。例如一个典型的连接点是方法调用,一个典型的切入点是对某一个类所有方法调用的集合。 织入(Weav... -
Spring框架的IoC
作者: 陆金龙 发表时间: 2022-04-06 17:30关键词:注入方式本文来源:主要参考并整理《Spring专业开发指南》第1章--第5章内容。 《Spring专业开发指南》:Rob Harrop,Jan Machacek著,Redsaga翻译小组译,电子工业出版社出版。 1.IoC简介 IoC提供了这样的服务,使一个组件能够在它的整个生命周期中访问它的依赖和服务。 IoC被分解为依赖注入和依赖查找两种子类型。 依赖注入的方式:构造器注入、Setter注入、基于注解的注入。 Spring的依赖注入容器的核心是Bean工厂。Bean工厂负责管理组件和它们之间的依赖关系。 BeanFactory的两个主要实现:... -
Java Web基础:JSP与Servlet
作者: 陆金龙 发表时间: 2022-04-05 16:34关键词:Servlet Tomcat JSP Listener Filter WebSocket本文内容主要来源于李刚《轻量级Java EE 企业应用实战--Structs2+Spring4+Hibernate》一书的第2章 JSP/Servlet及相关技术详解。本文对相关内容要点进行了整理。 1.部署在Tomcat下的Java Web应用文件结构 1.1 Web应用文件结构简介 <webappName> |--WEB-INF | |--classes | ... -
Springboot使用ResponseBodyAdvice处理String类型返回值异常
作者: 陆金龙 发表时间: 2022-02-18 02:46关键词:ResponseBodyAdvice String类型 StringHttpMessageConverter内容来源:Springboot使用了ResponseBodyAdvice处理返回值异常? - 少不读水浒的个人空间 - OSCHINA - 中文开源技术交流社区 为了统一接口响应的报文,现实了ResponseBodyAdvice接口,通过这个接口的实现类来统一处理报文 public class BaseGlobalResponseBodyAdvice implements ResponseBodyAdvice<Object> { //这个方法表示对于哪些请求要执行beforeBodyWrite,返回true执行,... -
Spring框架主要内容
作者: 陆金龙 发表时间: 2022-02-15 09:42关键词:Spring IOC AOP MVC SpringBoot1.Spring简介 Spring是一个用于构造Java应用程序的轻量级开源框架。 相比于structs这类框架,Spring不限定于构造Web应用。 轻量意味着最少侵入,使用该框架只需要很少的代码改动。 Spring起源于Rod Johnson 在“Expert One-to-One J2EE Design and Development”一书中展示的interface21框架,这一框架被开源,组成Spring框架的基础。Spring Framework 在2017年9月正式发布了 5.0 版本,截止到目前最新版本是5.3.18。 Spring Fra...