- 博客(12)
- 收藏
- 关注
原创 redis分布式锁过期的优化方案
问题场景:假设redis分布式锁(key)过期时间是5s,任务的执行时间是10s,那么就意味着A线程获取锁之后尚未执行完毕,B线程就可以获取到锁,很明显此时锁无法保证线程安全,应该如何优化处理?思路:线程获取到锁之后,开启一个守护线程,专门用来维护key的过期时间。由此可以保证任务线程未执行完毕的情况下,key不会过期。
2023-06-28 17:30:47
382
原创 Spring事务失效场景
Spring事务生效的前提是所连接的数据库要支持事务,如果底层的数据库都不支持事务,则Spring的事务肯定会失效。如果同一个类中的两个方法分别为A和B,方法A上没有添加事务注解,方法B上添加了 @Transactional事务注解,方法A调用方法B,则方法B的事务会失效。如果事务方法所在的类没有加载到Spring IOC容器中,也就是说,事务方法所在的类没有被Spring管理,则Spring事务会失效。如果内部方法的事务传播类型为不支持事务的传播类型,则内部方法的事务在Spring中会失效。
2023-06-28 09:11:57
1204
原创 linux系统安装nginx
1、安装gcc编译器首先通过gcc -v查看是否已经安装:由于服务器之前已经安装,这里就不重新安装了。如果没有安装的话可执行一下命令:yum install gcc-c++2、分别安装模块pcre、zlib、opensslyum install -y openssl openssl-develyum install -y pcre pcre-develyum install -y zlib zlib-devel(我这里之前已经安装完了)3、安装nginx进入/us
2022-05-03 11:39:58
1868
原创 idea运行正常,jar报错缺少某类
记录一下遇到的问题,早了半天才找到:idea运行正常,jar报错缺少某类。查看下pom文件maven插件(springboot项目:spring-boot-maven-plugin)是否包含如下参数:<includes> <include> <groupId>nothing</groupId> <artifactId>nothing</artifactId> </include>
2022-04-29 15:52:25
3810
1
原创 linux安装mysql
1、检查安装首先检查是否已经安装mysql,执行命令rpm -qa|grep mysql,如果没有任何信息则表示未安装,否则表示已经安装。2、卸载mysql如果未安装mysql则忽略该步骤。执行命令 service mysqld status:如下则表示没有该服务如下则表示MySQL server已启动关闭MySQL服务(如无该服务则忽略此步骤):service mysqld stop卸载MySQL:rpm -e --nodeps mysql查找与my
2022-04-28 16:01:17
2197
原创 npm install 异常处理
以遇到的异常为例,npm install失败提示缺少node-sass,然后执行npm rebuild node-sass;继续npm install;如果执行失败并提示配置python环境变量,则需下载安装python并配置环境变量。然后执行:npm install --global --production windows-build-tools npm install --global node-gyp最后继续执行npm install...
2022-04-21 16:40:15
2229
原创 JAXB xml处理工具类
1、首先创建Bean@XmlRootElement注解标注当前类作为根节点@XmlAccessorType注解标注绑定到XML文件的属性,@XmlRootElement默认绑定public属性@XmlRootElement@XmlAccessorType(XmlAccessType.FIELD)public class Bean{@XmlElementprivate Property property;}@XmlAccessorType...
2022-04-04 16:07:42
363
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人