自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(179)
  • 收藏
  • 关注

原创 子线程继承主线程的UUID

子线程继承主线程的UUID。

2024-08-08 10:16:49 162

原创 idea去掉右侧黄色提示

2024-03-14 20:48:28 849

原创 Mybatis返回Map<String,List>数据格式

【代码】Mybatis返回Map数据格式。

2023-05-06 11:44:31 4172

原创 FlashFXP导出导入站点

FlashFXP

2022-09-30 14:58:21 885

原创 CMD命令打war包

cmd命令打war包

2022-06-16 17:32:20 2667

原创 IDEA把C盘占满的问题

一个小时把C盘写了30G,剩余0字节用杀毒软件未检测到病毒后来逐一排查C盘大文件发现C:\Users\Administrator\.IntelliJIdea2017.2\system\tomcat占了30多个G,清空后变正常了想了下,可能是因为没有正确关闭idea的tomcat原因,导致不停地写错误日志之类的导致了...

2022-05-13 22:39:17 969

原创 SecureCRT配置

1、如果重装后,窗口配置和会话信息没有重置,需要把Globle Options —> General —>Configuration folder的配置文件置为当前安装目录, 默认会引用以前的配置目录2、也可以沿用之前的配置文件,用来导入本地会话记录如果没有菜单栏,可以点右上角, 有下向下的箭头,点开会有“添加或删除按钮”,重置或修改,可以调出菜单栏调编码:Session options 或者 Globle Options里的edit Default Settings 两种方式一.

2022-01-12 16:01:48 3398

转载 Linux查找Java进程中是哪个线程占用大量CPU

https://blog.youkuaiyun.com/yizufengdou/article/details/1121732061、确定Java进程IDps -ef | grep 'java' 或 jps -l 找出对应的java应用程序对应的进程ID号:2、确定该进程中,占用CPU最高的线程根据应用程序对应的进程ID查找该进程ID的全部线程,并且按照CPU使用率进行排序,占用CPU使用率最高的动态显示在第一行。以进程ID:为例,top -H -p 278283、将线程ID转换成16进制最高CUP线程I

2021-07-06 11:06:24 1918

转载 Spring中的单例Bean与线程安全----总结

为什么spring单例模式可以支持多线程并发访问?spring单例模式指的是在内存中只实例化一个类的对象。确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。当多个用户同时请求一个接口服务的时候,容器会给每一个请求分配一个线程,这时候多个线程会并发执行该请求所对应的业务逻辑。如果该逻辑涉及到对该单例状态(成员变量)的改变,就会有线程安全的问题。Spring使用ThreadLocal来解决线程安全问题,每个线程去执行业务代码的时候,都会去内存申请临时变量,这样就不会涉及变量并发访问冲突的问

2021-03-23 21:45:29 338

原创 Spring 事务

一、配置方式spring支持编程式事务管理以及声明式事务管理两种方式。编程式事务:是侵入性事务管理,使用TransactionTemplate或者直接使用PlatformTransactionManager,对于编程式事务管理,spring推荐使用TransactionTemplate。声明式事务:建立在AOP之上,其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,执行完目标方法之后根据执行的情况提交或者回滚,声明式事务最大的优点就是不需要通过编程的方式管理事务(即不需要

2021-03-22 11:45:29 155

原创 idea中新建的项目,不想把iml文件文件加入git

由于设置了新建文件自动添加到git中,新建项目时会把iml文件也add到git中,在version control中把iml文件还原,就不会add到git中了如果没解决可以试试https://my.oschina.net/u/4395893/blog/3318210,我没试过...

2021-03-19 15:22:14 2484

转载 死锁

https://blog.youkuaiyun.com/hd12370/article/details/82814348文章目录

2021-03-15 10:19:38 116

转载 RabbitMQ如何避免消息重复投递或重复消费

文章目录1、重复投递2、重复消费3、总结1、重复投递MQ消息发送上半场,即上图中的1-3发送端MQ-client将消息发给服务端MQ-server服务端MQ-server将消息落地(持久化到硬盘的日志文件中)服务端MQ-server回ACK给发送端MQ-client如果3丢失,发送端MQ-client超时后会重发消息,可能导致服务端MQ-server收到重复消息。此时重发是MQ-client发起的,消息的处理是MQ-server,为了避免步骤2落地重复的消息,对每条消息,MQ系统内部必须

2021-03-14 16:48:21 9590 4

转载 重复下单问题 (幂等性)

https://www.jianshu.com/p/e618cc818432https://www.cnblogs.com/Leo_wl/p/13365896.htmlhttps://www.cnblogs.com/hujinshui/p/10459548.html文章目录

2021-03-13 16:18:28 2052

转载 重复支付问题(幂等性)

在我们支付系统设计中,经常会遇到这样一个问题,防止用户重复支付。那么实际我们在设计支付系统时,如何来避免这一问题呢。1、为什么会出现重复支付1.1 客户误操作点了两次比如下单的按键在点按之后,在没有收到后端返回之前,按键的状态没有设为已禁用状态,还可以被按。1.2 支付渠道端返回超时用户在收银台页面点击某个支付方式后,在支付渠道(比如网银或者微信支付宝)上完成付款,但是渠道端返回的异步通知超时,导致系统付款状态尚未更新,用户并不清楚到底订单是否支付成功,而导致再次支付。2、如何防止重复支付提交

2021-03-13 15:15:48 4072

原创 Spring AOP实现自定义注解

文章目录

2021-03-13 12:52:12 214

转载 ConcurrentHashMap实现原理及源码分析

https://blog.youkuaiyun.com/weixin_43185598/article/details/87938882

2021-03-12 23:29:35 213

转载 HashMap实现原理及扩容机制详解

https://blog.youkuaiyun.com/lkforce/article/details/89521318

2021-03-12 22:17:50 1579

转载 数据库的隔离机制原理

https://www.cnblogs.com/wyaokai/p/10921323.html文章目录

2021-03-12 21:31:40 1346

原创 查看Tomcat端口号

tomcat安装目录---->conf---->server.xml文件下<connector>中的port就是tomcat的端口号

2021-03-09 16:58:34 3594

转载 分布式session

文章目录转自:https://blog.youkuaiyun.com/qq_35620501/article/details/95047642

2021-03-06 22:10:17 136

原创 synchronized底层实现原理、锁优化、锁升级

https://blog.youkuaiyun.com/qq9808/article/details/104867285/

2021-03-06 21:27:19 381 1

转载 一次完整的HTTP请求过程

总体步骤域名解析IP地址浏览器与WEB服务器建立TCP连接(TCP3次握手)建立TCP连接后,浏览器给WEB服务器发送一个HTTP请求服务器端响应HTTP请求,浏览器得到HTML代码浏览器解析HTML代码,并请求HTML代码中的资源(js、css、img等)关闭TCP连接,浏览器对页面进行渲染呈现给用户1、浏览器根据域名解析IP地址浏览器根据访问的域名找到其IP地址。DNS查找过程如下:浏览器缓存:首先搜索浏览器自身的DNS缓存(缓存的时间比较短,大概只有1分钟,且只能容纳1000条

2021-03-06 18:05:04 245

转载 单点登录(SSO)

一、背景在企业发展初期,企业使用的系统很少,通常一个或者两个,每个系统都有自己的登录模块,运营人员每天用自己的账号登录,很方便。但随着企业的发展,用到的系统随之增多,运营人员在操作不同的系统时,需要多次登录,而且每个系统的账号都不一样,这对于运营人员来说,很不方便。于是,就想到是不是可以在一个系统登录,其他系统就不用登录了呢?这就是单点登录要解决的问题。单点登录英文全称Single Sign On,简称就是SSO。它的解释是:在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统。如

2021-03-06 17:17:46 496

转载 逻辑删除记录时,如何保证业务的唯一性约束

一、业务背景通常业务系统的一些记录表都会有一些唯一性约束,例如相同用户下不允许重名;通常可以对指定列创建唯一性索引即可,例如:CREATE TABLE `novel`( `id` bigint(20) NOT NULL AUTO_INCREMENT, `novel_id` bigint(20) DEFAULT NUL

2021-03-06 13:42:52 1141

原创 《RabbitMQ实战指南》---- RabbitMQ进阶(二)

6、持久化7、生产者确认8、消息顺序性9、消息传输保障10、vhost11、集群

2021-02-24 20:50:58 252

原创 《RabbitMQ实战指南》---- RabbitMQ进阶(一)

1、备份交换器2、过期时间(TTL)3、死信队列(DLX)4、延迟队列5、优先级队列

2021-02-24 16:16:41 298

原创 《RabbitMQ实战指南》---- RabbitMQ客户端开发

1、基本使用Demo<!-- https://mvnrepository.com/artifact/com.rabbitmq/amqp-client --><dependency> <groupid>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>4.2.1</version> </dependency&g

2021-02-24 10:49:05 405

原创 《RabbitMQ实战指南》---- RabbitMQ入门

RabbitMQ

2021-02-23 20:39:21 399

原创 Linux命令面试题

⽇志特别⼤只想看最后100⾏怎么弄? 如果想⼀直看⽇志的持续输出,⽤什么命令?如果⽇志⼀边输出,⼀边想实时看到有没有某个关键字应该怎么弄?grep如果忽略⼤⼩写应该怎么弄? 正则表达式呢?vim往下⼀⾏是什么键?往下30⾏呢? 跳到⽂件末尾⼀⾏是什么? 跳回来是什么? 向后搜索是什么?如果有个⽂本⽂件,按空格作为列的分隔符,如果想统计第三列⾥⾯的每个单词的出现次数应该怎么弄?如果把上⾯的出现次数排个序应该怎么弄? 想按照数字本身的顺序⽽不是字符串的顺序排列怎么弄?Linux环境变量是以.

2021-02-23 11:04:53 372

转载 Java BIO、NIO、AIO

文章目录概念一、Java中的BIO(Blocking I/O)示例总结二、Java中的NIO (New I/O)三、Java中AIO (Asynchronous I/O)注意:I/O的对比概念在Java中,主要有三种IO模型,分别是:同步阻塞IO(BIO----Blocking I/O)同步非阻塞IO(NIO----New I/O)异步IO(AIO----Asynchronous I/O)同步与异步同步:同步就是发起一个调用后,被调用者未处理完请求之前,调用不返回。异步: 异步就是发起

2021-02-09 17:29:25 98

转载 Spring WebSocket实现消息推送

https://www.cnblogs.com/huangjinyong/p/10901806.html第一步: 添加Spring WebSocket的依赖jar包(注:这里使用maven方式添加 手动添加的同学请自行下载相应jar包放到lib目录)<!-- 使用spring websocket依赖的jar包 --><dependency> <groupId>org.springframework</groupId> <a.

2021-02-07 16:11:01 470

转载 JUnit启动webSocket异常 Error creating bean with name ‘webSocketHandlerMapping‘ defined in class path

转自: https://blog.youkuaiyun.com/wang_3600/article/details/80649408项目中引入websocket后,直接线上没事,但单元测试总出问题,今天有了个初步的解决方案!报如下异常(解决方法在末尾):org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'webSocketHandlerMapping' defined in class .

2021-02-07 15:57:03 2109

转载 java报错-->Error creating bean with name ‘org.springframework.web.servlet.resource.ResourceHttpRequest

转自:https://blog.youkuaiyun.com/qq_26819733/article/details/76401202Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘org.springframework.web.servlet.resource.ResourceHttpRequestHandler#0’: Invocation of init m.

2021-02-07 15:48:17 1242 1

转载 Java面试之Dubbo

转载:史上最全 40 道 Dubbo 面试题及答案,看完碾压面试官!文章目录1、Dubbo是什么?2、为什么要用Dubbo?3、Dubbo 和 Spring Cloud 有什么区别?4、dubbo都支持什么协议,推荐用哪种?5、Dubbo需要 Web 容器吗?6、Dubbo内置了哪几种服务容器?7、Dubbo里面有哪几种节点角色?8、画一画服务注册与发现的流程图9、Dubbo默认使用什么注册中心,还有别的选择吗?10、Dubbo有哪几种配置方式?11、Dubbo 核心的配置有哪些?12、在 Provi.

2021-02-01 16:04:34 162

原创 《从Paxos到ZooKeeper分布式一致性原理与实践》---- 总结

一、从ACID到CAP/BASE具体可参考:数据库事物和分布式事物:https://blog.youkuaiyun.com/jushisi/article/details/112378972二、一致性协议(2PC、3PC、Paxos算法)2PC、3PC、Paxos算法,可以说,这三种一致性协议都是非常优秀的分布式一致性协议,都从不同方面不同程度地解决了分布式数据一致性问题,使用范围都非常广泛。其中二阶段提交协议解决了分布式事务的原子性问题,保证了分布式事务的多个参与者要么都执行成功,要么都执行失败。但是,在

2021-01-27 22:16:53 636

转载 解决主从架构的redis分布式锁主节点宕机锁丢失的问题

解决Redis分布式锁业务代码超时导致锁失效问题解决主从架构的redis分布式锁主节点宕机锁丢失的问题普通实现说道Redis分布式锁大部分人都会想到:setnx+lua,或者知道set key value px milliseconds nx。后一种方式的核心实现命令如下:获取锁(unique_value可以是UUID等)SET resource_name unique_value NX PX 30000 释放锁(lua脚本中,一定要比较value,防止误解锁)if redis..

2021-01-24 19:24:15 9959 3

转载 缓存与数据库双写一致性如何解决?先操作数据库,还是缓存?

文章目录一、数据缓存1、为何要使用缓存2、哪类数据适合缓存3、缓存的利与弊二、如何保证缓存和数据库一致性1、不更新缓存,而是删除缓存2、先操作缓存,还是先操作数据库先删缓存,再更新数据库先更新数据库,再删缓存优先“先更新数据库,再删缓存”3、非要保证数据库和缓存数据强一致该怎么办缓存延时双删三、总结一、数据缓存1、为何要使用缓存在我们实际的业务场景中,一定有很多需要做数据缓存的场景,比如售卖商品的页面,包括了许多并发访问量很大的数据,它们可以称作是是“热点”数据,这些数据有一个特点,就是更新频率低,读

2021-01-24 17:37:14 216

转载 SpringBoot是怎么做到简化配置的?

一、EnableAutoConfigurationspringboot的启动类上有个注解SpringBootApplication,点开这个注解,可以看到它的内部实现,是由多个注解组成的。@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan( exc

2021-01-24 12:28:34 3646

原创 《高性能MySQL》---- 复制

复制概述MySQL支持两种复制方式:基于行的复制和基于语句的复制。复制通常不会增加主库的开销,主要是启用二进制日志带来的开销,但出于备份或及时从崩溃中恢复的目的,这点开销也是必要的。通过复制可以将读操作指向备库来获得更好的读扩展,但对于写操作,除非设计得当,否则并不适合通过复制来扩展写操作。在一主库多备库的架构中,写操作会被执行多次,这时候整个系统的性能取决于写入最慢的那部分。当使用一主库多备库的架构时,可能会造成一些浪费,因为本质上它会复制大量不必要的重复数据。例如,对于一台主库和10台备库,会有1

2021-01-23 17:36:25 305

空空如也

空空如也

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

TA关注的人

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