MySQL 死锁 是指两个或多个事务互相等待对方持有的锁,从而导致所有事务都无法继续执行的现象。在 InnoDB 存储引擎中,死锁是通过锁机制产生的,特别是在并发较高、业务逻辑复杂的情况下,更容易发生死锁。 一、MySQL 死锁的成因 MySQL 的死锁一般发生在 行级锁 上。常见的死锁成因包括: 事务 A 和事务 B 持有互相需要的锁 :事
2024-10-17Nacos2.3.2 在ubuntu下的部署 下载地址 修改 application.properties文件 开启鉴权 ### 开启鉴权功能nacos.core.auth.caching.enabled=true### The auth system to use, currently only 'nacos' and 'ldap' is supported:naco
2024-10-17前言 生产者-消费者模式是一个十分经典的多线程并发协作模式,弄懂生产者-消费者问题能够让我们对并发编程的理解加深。 所谓的生产者-消费者,实际上包含了两类线程,一种是生产者线程用于生产数据,另一种是消费者线程用于消费数据,为了解耦生产者和消费者的关系,通常会采用共享的数据区域,就像是一个仓库,生产者生产数据之后直接放置在共享数据区中,并不需要关心消费者的行为;而消费者只需要从共享数据区
2024-10-171.Hystrix进入维护模式 1.1 是什么 Hystrix是一个用于处理分布式系统的 延迟 和 容错 的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时、异常等,Hystrix能够保证在一个依赖出问题的情况下, 不会导致整体服务失败,避免级联故障,以提高分布式系统的弹性。 了解,这是Netflix项目中的组件,不会再使用了
2024-10-17前言 我们在使用IDEA开发Java应用时,可以安装很多的插件来帮助我们高效的开发代码。 我们需要注意开发的编码规范,这时候就可以安装一款很有名的插件,阿里巴巴的编码规约插件。可以用这个插件,对我们的代码进行扫描,并且导出报告,那么我们应该怎么操作呢? 如何扫描代码并且导出报告 首先,我们点击上方的【Tools】,然后再点击【阿里编码规约】,再点击【编码规约扫描】。
2024-10-17倒排索引 倒排索引 的概念是基于MySQL这样的 正向索引 而言的。 技术应用在Elasticsearch,得益于倒排索引,用来实现高性能的搜索功能 正向索引 例如有一张名为 tb_goods 的表: id title price 1
2024-10-17一 refresh_token刷新access_token Keycloak会话管理中,获取到accessToken和refreshToken后,基于accessToken交换用户数据或者参与KeycloakAPI的请求,当accessToken过期的时候,可使用refreshToken去交换新的accessToken和refreshToken。 这块根据之前的refresh_to
2024-10-17一、JavaSE 线程有几个状态 6个状态分别是:新建,运行,阻塞,等待,超时等待,终止 wait和sleep的区别 wait来自Object类,Sleep来自Thread类。 wait会释放锁,sleep不会。 wait必须在同步代码块中执行,sleep可以随便执行。 wait可以捕获异常,sleep必须捕获异常。 synchr
2024-10-17使用枚举替换布尔值主要基于以下几个原因 ● 可读性 ● 可拓展性 ● 安全防控 可读性 我们会定义 boolean 类型( true 或 false )作为方法参数,虽然比较简洁,但有时候参数的含义往往不够清晰,造成阅读上的障碍, 比如:参数可能表示“是否开启某个功能”,但
2024-10-17JVM的内存结构 程序计数器 虚拟机栈 本地方法栈 堆 方法区 程序计数器 二进制字节码-->解释器-->机器码-->CPU 作用 记录下一条JVM指令的执行地址 特点 线程私有的(每个线程有自己的程序计数器):java支持多线程运行,CPU给每个线程分配一个时间片,如果在时间片内没运行完,去执行另一
2024-10-17