Spring 使用 Kafka 的三种方式

本文介绍spring中使用Kafka的三种方式,其中container方式最灵活,但是开发相对较复杂,stream方式使用最简便,listener方式由于提供的最早,使用的较普遍。 具体的代码参照 示例项目 https://github.com/qihaiyan/springcamp/tree/master/spring-kafka 一、概述…

hello hello 发布于 2023-12-13

Spring Cache 自定义 resolver,增强@Cache注解的能力

本文介绍spring中自定义缓存resolver,通过自定义resolver,可以在spring的cache注解中增加附加处理。 具体的代码参照 示例项目 https://github.com/qihaiyan/springcamp/tree/master/spring-redis-resolver 一、概述 cache-…

hello hello 发布于 2023-12-12

Spring Cloud Gateway 动态转发后端服务

API网关的核心功能是统一流量入口,实现路由转发,SpringCloudGateway是API网关开发的技术之一,此外比较流行的还有Kong和ApiSix,这2个都是基于OpenResty技术栈。…

hello hello 发布于 2023-12-11

Spring Boot 3 的 AOT(GraalVM Native Image)应用开发

GraalVM Native Images是一个利用AOT(Ahead-of-Time)技术把java程序直接编译成可执行程序的编译工具,编译出来的程序在运行时不再依赖JRE,同时启动速度快,资源消耗低,这对传统java程序来说都是极大的优势。同时云原生应用来说,GraalVM Native…

hello hello 发布于 2023-12-07

Spring RestTempate 打印请求和响应内容日志

系统中经常需要调用第三方接口实现业务功能,为了方便调试和定位问题,我们通常需要将接口调用参数和返回结果打印到日志文件中。在Spring项目中一般会用RestTemplate来调用第三方接口。 通过在RestTemplate调用过程中统一打印日志,可以保持代码的整洁,也可以统一日志格式,比在业务逻辑中到处打印接口调用日志要方便的多。 具体的代码参照 示例项目…

hello hello 发布于 2023-12-07

Spring中BeanFactoryPostProcessors是如何执行的

Spring中的BeanFactoryPostProcessor是在Spring容器实例化Bean之后,初始化之前执行的一个扩展机制。它允许开发者在Bean的实例化和初始化之前对BeanDefinition进行修改和处理,从而对Bean的创建过程进行干预和定制化。…

hello hello 发布于 2023-12-02

Kafka 如何保证消息消费的全局顺序性

哈喽大家好,我是咸鱼 今天我们继续来讲一讲 Kafka 当有消息被生产出来的时候,如果没有指定分区或者指定 key ,那么消费会按照【轮询】的方式均匀地分配到所有可用分区中,但不一定按照分区顺序来分配 我们知道,在 Kafka 中消费者可以订阅一个或多个主题,并被分配一个或多个分区…

hello hello 发布于 2023-12-02

Spring 中 lazy-init 懒加载的原理

懒加载是Spring框架中的一个重要特性,它允许我们将bean的实例化推迟到第一次使用时。懒加载的主要用途是提高应用程序的启动性能,减少不必要的资源消耗。 一、懒加载的用途…

hello hello 发布于 2023-11-29

Spring Data Redis Stream 的使用

一、背景 Stream 类型是 redis5 之后新增的类型,在这篇文章中,我们实现使用 Spring boot data redis 来消费 Redis Stream 中的数据。实现独立消费和消费组消费。 二、整合步骤 1、引入jar包 <dependencies> <dependency>…

hello hello 发布于 2023-11-27

Spring Boot + Dubbo + Seata 分布式事务实战

前言 Seata 是 阿里巴巴开源的分布式事务中间件,以高效并且对业务0侵入的方式,解决微服务场景下面临的分布式事务问题。 事实上,官方在 GitHub 已经给出了多种环境下的 Seata 应用示例项目,地址: https://github.com/seata/seata-samples 。 为什么笔者要重新写一遍呢,主要原因有两点:…

hello hello 发布于 2023-11-27
上一页 下一页