自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

dylan的博客

学习、总结、分享

  • 博客(58)
  • 收藏
  • 关注

原创 【技术积累】SpringBoot+disruptor高性能队列

`队列`是在数据结构中是基础的数据类型,在编程开发经常使用的数据结构,java中的数据结构有很多种,我们常用到的可能使用阻塞队列(`BlockingQueue`),但是BlockingQueue队列性能相对于disruptor性能较低,应用场景较少,本文重点介绍BlockingQueue队列的性能瓶颈点和disruptor框架高性能的实现原理

2024-08-15 07:00:00 988

原创 SpringBoot集成spring-statemachine状态机实现业务流程

在工作中经常会遇到业务流程的实现(事件审批、请假任务审批流程等),常见的实现方式是简单的业务流程使用硬编码,通过简单状态status实现,复杂的业务流程使用流程引擎实现(Flowable、Activiti、Camunda等),但是流程引擎实现比较复杂,对一些不常变更的和简单的业务流程使用流程引擎比较大材小用;在一些比较简单的业务流程中,经常使用硬编码的方式实现,即多个,代码耦合性比较强,并在流程变更时,需要修改的代码比较多,整体逻辑比较混乱,不利于维护;所以需要寻一种硬编码和流程引擎之外的实现方式;

2024-08-05 07:00:00 1165

原创 SpringBoot整合Flink CDC实时同步postgresql变更数据,基于WAL日志

在工作中经常会遇到要实时获取数据库(postgresql、mysql等)的变更数据,主要体现数据的实时性;【技术实现】java实时同步postgresql变更数据,基于WAL日志但是,之前的实现方式比较繁琐,不利于维护,所有本文整合Flink CDC通过一个比较简单的方式实现;Flink CDC(Change Data Capture)是一个基于Apache Flink构建的开源数据变更捕获(CDC)框架。

2024-07-31 00:15:05 910

原创 springboot集成mybatis时,dao层的mapper类需要添加@Repository注解吗?

然而,为了遵循Spring的架构风格和最佳实践,推荐在Mapper接口上添加@Repository注解,尤其是在没有使用MyBatis的自动扫描功能时。在Mapper接口上单独声明,或者通过XML配置来管理Mapper接口,那么在这些情况下,添加@Repository注解也是可选的。在Spring Boot项目中,当你使用MyBatis作为ORM框架时,关于DAO层的Mapper类是否需要添加@Repository注解,这主要取决于你的项目需求和配置。虽然不是必需的,但在DAO层的Mapper接口上添加。

2024-07-28 23:41:23 221

原创 【请求代理】springboot单机服务基于过滤器Filter实现第三方服务器接口请求代理功能

springboot使用过滤器Filter和适配器模式实现三方请求代理,不同请求实现不同的token鉴权,并统一token鉴权,监控请求

2024-07-28 16:10:40 456

原创 springboot+dynamic-datasource实现多数据源动态切换,非@DS注解方式

使用springboot+dynamic-datasource-spring-boot-starter实现动态数据源加载、切换

2023-07-11 08:00:00 1962

原创 【问题】使用Collections.sort()进行list集合排序问题

使用Collections.sort()进行list集合排序问题

2023-07-10 08:00:00 666

原创 【技术应用】java实现排行榜方案

java实现排行榜功能,涉及sortedSet和PriorityQueue的实现方案

2023-02-04 01:18:07 6397 2

原创 【技术应用】springboot内置tomcat配置unix域套接字属性

springboot内置tomcat配置unix域套接字(unix domain socket)属性

2022-12-29 23:37:16 1130 2

原创 【技术应用】java基于UNIX域套接字(unix domain socket)连接redis

java通过socket和lettuce框架通过UNIX域套接字(UNIX Domain Socket)连接redis,也是通过redis的redis.sock文件实现连接

2022-12-25 09:30:00 1935

原创 【问题分析】解决java中epoll依赖缺失问题

解决使用lettuce框架实现UNIX域套接字unix domain socket连接redis时,epoll依赖缺失的问题,主要是文件netty_transport_native_epoll_x86_64缺失,通过源码分析定位和解决问题

2022-12-24 23:06:42 1991

原创 【技术应用】java接口幂等性实现方案

java接口幂等性实现样例,基于springboot,通过aop切面编程和redis组件实现

2022-12-21 23:31:47 2851

原创 【redis知识】数据过期机制

redis过期时间:定时删除、惰性删除,源码分析

2022-12-21 00:00:16 901

原创 【代码规范】lombok注解使用

lombok注解总结,常用注解使用示例

2022-12-18 08:30:00 551

原创 【JVM知识】插入式注解处理器实现java编程规范检测

插入式注解处理器实现java编程规范检测,实现插件有findbug、lombok、mapstruct等

2022-12-17 22:22:56 669

原创 【技术应用】mybatis数据库操作(insert、update、delete)返回值为0的场景

mybatis数据库操作(insert、update、delete)返回值为0的场景,涉及insert ingore、replace into、insert into...on duplicate key update和updae操作、delete操作,sql示例和mybatis执行示例

2022-12-15 21:42:18 7423 1

原创 【技术应用】java实现第三方接口代理

java实现第三方接口代理功能,重新封装request请求,添加请求头,新增第三方鉴权信息(token)

2022-12-13 23:59:27 2469

原创 【Java应用】设置线程池最佳的线程数

线程池设置最优线程数

2022-12-12 08:30:00 1698

原创 【redis事务】@Transactional对Redis事务起作用(包含redis+lua)

验证@Transactional注解对Redis事务起作用,验证@Transactional对redis+lua脚本执行是否生效,代码实例验证

2022-12-11 12:34:51 2796 3

原创 【redis原理】redis事件机制

redis事件机制分析,涉及文件事件和时间事件,主要涉及源码分析

2022-12-10 23:50:51 650

原创 【spring技术】接口多实现类的注入问题

在接口多实现类的注入过程中遇到的问题,结果过程分析,涉及@Qualifier、@Resource、@ConditionalOnProperty、@AllArgsConstructor和@RequiredArgsConstructor等注解,@AllArgsConstructor+final实现bean注入,同时通过@AllArgsConstructor注解实现接口多实现类的注入

2022-12-09 23:55:16 2724

原创 【redis原理】redis事务源码分析

redis事务原理分析,部分源码解读

2022-12-08 20:30:00 328

原创 【技术应用】redis事务的应用

redis事务使用示例,并解决遇到的ERR EXEC without MULTI问题

2022-12-07 23:49:34 695

原创 【技术应用】springboot+redis+lua实现下订单功能(秒杀)

springboot+redis+lua实现下订单功能,在扣减订单的同时也会把订单信息新增到用户信息里面,也是考虑操作的原子性,提供关键代码示例

2022-12-06 18:30:00 192

原创 【技术应用】springboot+redis+lua实现延迟消息

springboot+redis+lua实现延迟消息,涉及实现方案分析,关键代码示例

2022-12-05 22:00:45 393

原创 【技术应用】springboot+redis+lua实现分布式限流

springboot+redis+lua实现分布式限流,lua信息概述,redis+lua原子性特性,和使用lua的原因,分布式限流源码实现示例

2022-12-04 22:42:07 616

原创 【技术应用】java基于UNIX域套接字(unix domain socket)连接postgresql数据库

java基于UNIX域套接字(unix domain socket)连接postgresql数据库,涉及UNIX域套接字文件.s.PGSQL.5432,连接数据库通过jdbc和mybatis框架

2022-12-04 20:30:00 942

原创 【知识点】java语法糖

java语法糖,涉及java反编译class文件

2022-12-03 18:16:23 120

原创 【知识点】你真的了解断言吗?

各个技术点断言总结,示例代码,涉及java中的assert、jdk1.8的Predicate、gateway中的断言和全局异常处理中用到的断言;

2022-12-02 23:32:43 1393

原创 【技术应用】java通过url爬虫获取公众号文章内容

java通过url爬虫获取公众号文章内容,同时涉及CSDN文章内容爬取,基于开源工具mlunit实现

2022-12-01 21:54:26 3224 3

原创 【工具】linux、window、手机端抓包工具汇总

linux、window、手机端抓包工具汇总,设置tcpdump命令、wireshark工具、手机端stream工具,和其它工具fiddler、Charles,并进行优缺点比对

2022-12-01 19:42:07 2614

原创 【spring 技术】基于springboot实现微服务之间FeignClient调用,免认证的功能

【spring 技术】基于springboot实现微服务之间FeignClient调用,免认证的功能,涉及OAuth2的拦截器OAuth2FeignRequestInterceptor 和AccessTokenContextRelay,即可实现内部feign调用免认证,也可以实现内部接口避免对外暴露

2022-11-30 23:56:22 4137

原创 【技术应用】java实现动态线程池ThreadPoolExecutor

java实现动态线程池ThreadPoolExecutor,代码示例,开源的动态可监控线程池框架(DynamicTp)推荐

2022-11-29 23:57:32 1336

原创 【spring基础知识】常用注解

spring常用注解,例如:@Component、@Bean、@Autowire、@Resource、@Configuration、@Repository,和@Service等,涉及注解特点和注解与注解之间的区别

2022-11-28 23:45:57 139 2

原创 【java技术】文件变更监控方式

文件变更监控,主要涉及jdk自带的webservice和common-io工具的FileAlterationListenerAdaptor

2022-11-27 23:19:05 1187

原创 【技术实现】java实时同步postgresql变更数据,基于WAL日志

java基于WAL日志订阅获取postgresql实时变更数据,类属于阿里巴巴的canal数据同步工具,基于postgresql jdbc的PGReplicationStream实现,涉及postgresql数据库的逻辑复制、订阅与通知

2022-11-26 21:49:12 4450 12

原创 【典型案例】解决idea打不开项目的问题

解决idea打不开项目的问题,涉及/etc/hosts,maven仓库访问

2022-11-25 23:06:38 10376

原创 【redis基础知识】数据结构之快速列表:quicklist

【redis基础知识】数据结构之快速列表quicklist,源码分析

2022-11-23 23:22:59 486

原创 java排名前16的常用工具类

基于github使用排名的java常用工具类

2022-11-23 09:50:41 375

原创 【redis基础知识】数据结构之压缩链表:ziplist

redis数据结构压缩链表ziplist,知识点介绍,源码分析

2022-11-23 01:08:25 1287

java实时同步postgresql变更数据,基于WAL日志

postgresql数据库数据实时变更订阅获取,基于WAL日志实现同步

2023-01-13

java基于UNIX域套接字(unix domain socket)连接redis

通过java socket和lettuce框架基于UNIX域套接(UNIX Domain Socket)协议实现redis连接和操作,使用redis.sock文件

2022-12-24

java基于WAL日志订阅获取postgresql实时变更数据代码示例

java基于WAL日志实时获取postgresql数据库数据,类似于阿里巴巴的canal工具,实现变更数据订阅通知功能,也基于主从数据库数据复制功能

2022-11-27

javaAgent实现补丁不重出功能,通过attach实现程序运行时加载,同时通过shell脚本部署到容器内

javaAgent字节码增强技术(也叫java探针技术)实现补丁不重出功能,通过attach实现程序运行时加载,同时通过shell脚本部署到容器内,涉及宿主机操作docker容器内的shell脚本

2022-11-13

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除