自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 低成本理解MVCC

低成本理解MVCC

2024-07-12 15:58:51 130

原创 mySQL事务理解

什么是幻读:在解决脏读的前提下(通过行锁),一个事务提交前后,第二个事务读到的数据的条数是不一致的。(重点),如果事务方法范围比锁的范围大,或者锁在方法上(类锁),锁释放了,但事务却没提交。什么是不可重复读:在解决脏读的前提下(第一个事务没提交,不真正写进去就能解决),一个事务提交前后,第二个事务读到的数据是不一致的。什么是脏读:一个事务还没提交的数据,第二个事务读到了。5、有了事务这个东西之后,设计数据库的大佬们还会遇到什么问题,这些问题精简总结成三个问题:脏读、不可重复读、幻读。或者rollback;

2024-07-11 11:10:23 366

原创 微服务学习心得

Eureka有一个保护机制:就是失效剔除(长时间心跳检测失败,置为失效节点)的时候,如果有效节点数量小于85%,就不再被动失效提出,除非主动失效,这是为了防止类似注册中心通讯问题。1.1 Eureka适用于Netflix的微服务架构(spring cloud框架),Nacos适用于阿里巴巴的微服务架构(spring cloud alibaba框架)而三个层面都需要的就是清晰的思路,问哪答哪,不会直接说而不是答非所问。2、原理、源码层面的面试题,主要是流程(最好说出方法名)

2024-07-04 12:13:08 153

原创 synchronized和lock锁的个人浅见

这是一个老掉牙的面试题,但是还有面试官在问,因为确实经典,也确实能区分求职者有没有真正理解锁机制。内置关键字 vs 接口:1、synchronized 是Java中的一个内置关键字,它是自动的、隐式的,当一个方法被声明为同步时,会自动获取并释放对象的监视器锁。lock 是java.util.concurrent包中的Lock接口的一部分,是一个显式、可配置的锁定机制,可以提供更精细的控制,如非阻塞尝试获取锁等。

2024-07-03 10:25:51 378

原创 测试wait和notify

(想在网上找一个wait和notify的代码例子,发现有个缺陷,如果没有中间睡眠的5秒,那么线程1完全不需要notify,因为线程2走不到wait。只要看懂下面的代码,再去百度一下wait和sleep的区别,就应该就不用去背了。// 模拟任务执行时间。// 模拟任务执行时间。while (count == 0) { // 当count为0时,等待被通知。= 0) { // 当count大于0时,等待变为0。// 模拟任务执行时间。// 模拟任务执行时间。// 唤醒可能正在等待的线程。//notify();

2024-07-02 10:52:07 409

原创 计数器CountDownLatch、栅栏CyclicBarrier、信号量Semaphore

1、这三个都是AQS的经典实现,CyclicBarrier是基于ReentrantLock实现,而另外两个是直接使用AQS实现的。2.2 CyclicBarrier就是拦住所有线程,等阻塞线程的个数达到一定数,就放开,还可以再放开之前优先执行某个任务。2.1 CountDownLatch就是需要等其他线程执行指定次数的countDown(),然后主线程就能被唤醒。2.3 Semaphore就是放开指定线程数,阻塞剩余线程,有过有人释放,则唤醒一个线程。

2024-06-26 10:11:51 86

原创 AQS源码学习

nextWaiter 当node再CLH队列时,nextWaiter表示共享式或独占式标记。在条件队列时,nextWaiter表示下个Node节点指针。一个抽象类,并发编程最重要的类之一。ReentrantLock、栅栏CountDownLatch、信号量Semaphore等都是基于AQS。对标Synchroniz的wait方法,条件队列,满足条件才能唤醒。waitStatus 当前或者后继节点的状态,存放node的双端双向队列,用来排队拿锁。存放node的双端单向链表。thread封装线程,

2024-06-25 14:31:39 144

原创 ConcurrentHashMap源码学习心得帮助快速面试

3.1.2基于这个设计,扩容的时候,(因为是对数据key的hash值进行&运算决定存在哪个桶)新数据存放的索引位置要么是原数据存放的索引位置,要么是索引位置加上2的n-1次方。3.1.1基于这个设计,长度减一操作就可以得到二进制位都是1的数,这样使用这个数对数据key的hash值进行&运算的时候,就能够根据hash值不同位的数据的不同把他均匀地放到各个桶(数组的位置称为桶)。扩容实际是在分发任务,所有参与扩容的线程,在做一个循环领取任务的动作(任务的拆分规则基于当前数据量,以及cpu的线程数)。

2024-06-23 17:08:20 178

原创 线程池学习心得帮助快速面试

1.2.1 添加一个核心线程来干活,成功则执行1.1.2(核心线程不设置失效的话,就永远存在了,一直循环用take方法死等任务然后执行)。1.2.3 添加一个非核心线程,成功则执行1.1.2(非核心线程,一直循环用poll方法等任务然后执行,超时则退出)。1.2.2 添加到任务队列,成功需要判断工作线程个数,为0的话需要添加一个非核心线程干活(例如核心线程数设置为0),添加的话失败往下走。1.2.4 使用拒绝策略(1、报错,2、丢老的,3、丢新的,4、调用线程处理)1、整体思路(线程池两个维度的两大流程)

2024-06-22 15:22:19 158

原创 华为od机试计算器带括号加减乘除“+-*/()”

华为od机试遇到的,没做完。应该是力扣plus题目我没会员看不到,在外面3小时做出来了。

2023-12-12 09:11:21 432

原创 Redis学习心得

setrange key index p:将key的value中索引为5的位置设置为p(如果string长度比index小,会导致有空值“/x00”的情况)ttl key:看这个key还多久过期(已过期返回-2,没设置过期返回-1,刚好过期返回0)expire key 10:给已存在的key设置过期时间(默认单位为秒)incrby key 2:value值+2(没有这个key会创建)incr key:value值加一(没有这个key会创建)exists key:key是否存在。

2023-07-20 16:43:57 65

原创 设计模式学习心得

设计模式学习心得

2022-12-06 19:18:23 180 1

原创 Elasticsearch学习心得

Elasticsearch学习心得

2022-12-04 10:47:45 347

原创 kafka 学习心得

kafka 学习心得

2022-12-01 23:21:24 539

原创 敲代码敲他Y

单点登陆系统实现为什么要用单点登陆系统用户通过不同系统登陆,不同系统调用统一的认证授权服务,然后统一调用数据库.解决方案1: 用户登陆成功以后,将用户登陆状态存储到redis数据库说明: 用户登录成功后,会基于UUID生成一个token,然后与用户信息绑定在一起存储到数据库.后续用户在访问资源时,基于token从数据库查询用户状态,这种方式因为要基于数据库存储和查询用户状态,所以性能表现一般.解决方案2:用户登陆成功以后,将用户信息存储到token(令牌),然后写到客户端进行存...

2021-12-29 10:51:10 1397

原创 电商项目介绍

电商项目介绍

2021-12-26 15:51:39 5952

原创 hello初窥源码

1,用RestTemplate方法实现远程调用,此方法与注册中心nacos无关2,先到nacos查找并获取服务列表(LoadBalancerClient(客户端负载均衡))/(Servicelnstance(服务实例)),根据服务实例发起远程调用RestTemplate(ip,port,path)远程调用的实现:\配置启动注册中心链接服务1.环境变量(java_home)2,下载安装Nacos3.再conf/application.properties里配置链接数据库4.startu..

2021-12-02 18:27:39 434

原创 总结面试题

Spring的工作流程或者这样问: 如何实现一个IOC容器/Spring怎么进行控制反转和依赖注入基本步骤:1. 用配置文件(xml文件)配置包扫描路径2. 递归包扫描获取.calss文件3. 反射/确定需要交给IOC管理的类4. 对需要注入的类进行依赖注入详细步骤1 配置文件中指定需要扫描的包路径2 定义注解,分别表示访问控制层 业务服务层 数据持久层 依赖注入注解 获取配置文件注解3 从配置文件中获取需要扫描的包路径,获...

2021-12-02 18:25:59 452

空空如也

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

TA关注的人

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