技术经验谈 技术经验谈
首页
  • 最佳实践

    • 抓包
    • 数据库操作
  • ui

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 总纲
  • 整体开发框架
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

hss01248

一号线程序员
首页
  • 最佳实践

    • 抓包
    • 数据库操作
  • ui

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 总纲
  • 整体开发框架
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 日志体系

    • springboot日志系统
  • springboot

  • ruoyi-vue-pro

  • IT工具链
  • java学习路线和视频链接--尚硅谷
  • JDK动态代理原理和应用
  • jvm一图流
  • linux运维
  • spring boot笔记
  • spring-cloud学习资料和路线
  • springcloud alibaba
  • Springcloud学习笔记
  • 从java编译原理到Android aop
  • 大数据
  • 操作系统原理一图流
  • 汇编语言一图流
  • 泛型
  • 网关
  • 面试题精讲
    • 4.1 spring里的aop
    • 4.2 spring循环依赖
      • 面试题
      • 三级缓存解决对象的循环依赖问题
      • 循环依赖debug
      • refresh方法
      • finsishBeanFactoryIniilization
      • pripareInstanteSigletons
      • doGetBean
      • getSingleton
      • createbean
      • docreatebean
      • addSingletonFactory
      • populateBean
      • b初始化时填充属性a:
      • 循环依赖的总结
    • 题目
    • 数据类型
    • 五大数据类型的落地应用
      • string
      • 分布式锁
      • hash
      • list
      • set-无序无重复
      • zset
    • 5.2 分布式锁
      • 面试题
      • 改进1-单机加锁
      • 改进2 分布式锁
      • 使用事务来删除key
      • 使用jedis+lua脚本 删除key
      • 综合解决方案
      • 总结
    • 5.3 缓存过期淘汰策略
      • 最大内存配置
      • 定时删除,惰性删除
      • 定期删除
      • 内存淘汰策略
      • LRU算法
      • 手写lru
      • 案例1
      • 案例2 不依赖jdk
  • java
xugaoyi
2022-01-04
目录

面试题精讲

# 尚硅谷java面试题精讲-第三季

https://www.bilibili.com/video/BV1Hy4y1B78T

# 4.spring

# 4.1 spring里的aop

image-20211231222658610

image-20211231223051631

spring5不一样:

image-20211231223157334

image-20211231223400360

# 4.2 spring循环依赖

# 面试题

image-20211231223733024

image-20211231223828958

image-20211231223905815

image-20211231223931476

image-20211231224011241

image-20211231224216504

image-20211231224914960

image-20211231224653309

image-20211231225949407

image-20211231224947800

image-20211231225101013

image-20211231225123022

image-20211231225252272

image-20211231225237916

# 三级缓存解决对象的循环依赖问题

image-20211231225413204

image-20211231225441030

image-20211231225620700

image-20211231225702923

# 循环依赖debug

image-20211231230057039

image-20211231230309260

image-20211231230404109

image-20211231230439221

image-20211231230517065

image-20211231230639464

image-20220101092036085

image-20220101092002558

# refresh方法

image-20220101092239870

image-20220101092559239

# finsishBeanFactoryIniilization

image-20220101092741041

image-20220101092805823

# pripareInstanteSigletons

image-20220101093000200

image-20220101093039422

image-20220101093127084

# doGetBean

image-20220101093304943

# getSingleton

image-20220101093618340

初次走else,返回null

,找不到缓存,则开始创建流程:

image-20220101093750841

image-20220101094219227

image-20220101094325405

image-20220101094439068

image-20220101094657523

image-20220101094539837

# createbean

image-20220101094816093

image-20220101094843509

# docreatebean

image-20220101094944980

createBeanInstance

image-20220101095040051

image-20220101095147062

image-20220101095235867

image-20220101095303232

# addSingletonFactory

image-20220101095348756

# populateBean

image-20220101095650676

image-20220101095807532

image-20220101095834340

image-20220101095957845

image-20220101100022285

# b初始化时填充属性a:

image-20220101100611868

image-20220101100630704

image-20220101100732477

image-20220101100751202

image-20220101100150485

image-20220101100904641

image-20220101101019181

image-20220101101058881

image-20220101114914622

# 循环依赖的总结

image-20220101115456885

image-20220101122614293

image-20220101122708641

image-20220101122732065

image-20220101122850806

image-20220101122957788

image-20220101123043762

# 5.redis

# 题目

image-20220101123249671

image-20220101125150624

# 数据类型

image-20220101125113536

image-20220101125241184

# 五大数据类型的落地应用

image-20220101125415331

image-20220101125451591

# string

image-20220101131103088

image-20220101131130796

image-20220101131243279

# 分布式锁

image-20220101131326633

image-20220101131436190

image-20220101131539482

# hash

image-20220101164455484

image-20220101174123416

image-20220101174559989

image-20220101174646254

# list

image-20220101174837502

image-20220101175003262

# set-无序无重复

image-20220101175240191

image-20220101175332718

image-20220101175424094

image-20220101175452645

image-20220101175649073

image-20220101175844359

image-20220101175924855

image-20220101175957013

image-20220101180050803

image-20220101180100534

image-20220101180112579

# zset

image-20220101180250316

image-20220103095554668

image-20220103095619579

image-20220103095634333

image-20220103095830640

# 5.2 分布式锁

# 面试题

image-20220103104212118

image-20220103105814271

image-20220103105848994

image-20220103124116284

image-20220103124238715

image-20220103124506281

image-20220103124647458

image-20220103125008515

image-20220103125110991

# 改进1-单机加锁

image-20220103130153215

image-20220103130414510

image-20220103130428702

image-20220103130448906

image-20220103130534618

# 改进2 分布式锁

image-20220103130742577

image-20220103131012649

image-20220103180004238

image-20220103184942077

image-20220103185017569

image-20220103185131076

jmeter压测,模拟并发

image-20220103185416123

image-20220103185455574

image-20220103185540084

image-20220103185654499

image-20220103185740289

image-20220103191328321

image-20220103191309473image-20220103192017656

image-20220103192040689

image-20220103192515312

image-20220103192327756

image-20220103192554433

image-20220103192924466

image-20220103192711632

image-20220103192802889

# 使用事务来删除key

image-20220103193019826

image-20220103193503777

image-20220103193520560

image-20220103193536680

正常情况:

image-20220103193926491

异常情况: 被加塞

image-20220103194035054

另外用户加塞:

image-20220103194017702

导致我自己事务失败. 类似mysql的乐观锁

image-20220103194137239

image-20220103194447837

# 使用jedis+lua脚本 删除key

image-20220103194800312

image-20220103195018092

image-20220103195219574

image-20220103195234622

image-20220103195524903

使用zookeeper的强一致性来解决这个问题

image-20220103195628871

# 综合解决方案

image-20220103200059306

image-20220103200200715

image-20220103200221993

image-20220103200250915

image-20220103200321436

image-20220103200440209

image-20220103200506429

image-20220103200834056

image-20220103200941061

# 总结

https://www.bilibili.com/video/BV1Hy4y1B78T?p=61&spm_id_from=pageDriver

# 5.3 缓存过期淘汰策略

image-20220103205447582

image-20220103205513174

image-20220103205557096

image-20220103205620750

# 最大内存配置

image-20220103205658239

image-20220103205804338

image-20220103205833852

image-20220103205937961

image-20220103210035054

image-20220103210113324

image-20220103210153508

image-20220103210249075

image-20220103210352443

image-20220103210449297

# 定时删除,惰性删除

image-20220103210547055

image-20220103210654068

image-20220103210731884

image-20220103214321019

image-20220103214352384

image-20220103214419858

image-20220103214537762

# 定期删除

image-20220103214613150

image-20220103214744915

# 内存淘汰策略

image-20220103214938637

image-20220103215253602

image-20220103215339459

两种配置方式

image-20220103215507976

image-20220103215609474

# LRU算法

Caffeine 当下最优秀的内存缓存框架的使用与最佳实践+配合Redis做二级缓存 (opens new window)

image-20220103215922538

image-20220103220100714

image-20220103220718444

image-20220103220913340

image-20220103221140633

image-20220103221158009

image-20220103221234888

# 手写lru

image-20220103221325342

# 案例1

image-20220103221421076

image-20220103221544850

image-20220103221645998

image-20220103221810496

image-20220103221901151

构造函数true; 访问顺序

image-20220103222224128

构造函数false: 访问顺序

image-20220103222443470

# 案例2 不依赖jdk

参考AQS

image-20220103222932947

image-20220103223154093

image-20220103225046367

image-20220103225150946

image-20220103225350615

image-20220103225407165

image-20220103225510509

image-20220103225602829

image-20220103225657084

image-20220103225838104

image-20220103225935039

image-20220103230027308

image-20220103230241230

编辑 (opens new window)
上次更新: 2022/08/16, 20:05:05
网关

← 网关

最近更新
01
截图后的自动压缩工具
12-27
02
图片视频文件根据exif批量重命名
12-27
03
chatgpt图片识别描述功能
02-20
更多文章>
Theme by Vdoing | Copyright © 2020-2025 | 粤ICP备20041795号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式