复习Java,看了还不错的,资料搜集笔记
写了解特点,会用,在简单了解原理,再用,再去深入了解原理,货比三家。
- 常用的生产排查问题命令,以及jps,jmp这些命令
- JDK7 到8,hashMap的变化;
- jdk的垃圾收集器,垃圾收集算法,G1和Jdk 8 的区别
- Spring Bean 的生命周期
- 分布式事务
- SpringMVC工作流程(详-小白版)
- MySQL高级 之 explain执行计划详解
- finnaly和return
- sleep和wait区别,并且查看线程运行状态
try{TimeUnit.SECONDS.sleep(100);}catch(InterruptedExceptione){thrownewRuntimeException(e);}- wait方法释放锁,验证代码
- 并发编程之的await和signal等方法的详细解析
- String类型进行拼接,"+"和append的区别
- ArrayList与LinkedList详解
- Apache Commons家族StringUtils工具类深入整理
- java 实现排序
Collections.sort(list,(o1,o2)->o2-o1);//publicclassSortExample{publicstaticvoidmain(String[]args){Integer[]array={5,3,8,6,2};Arrays.sort(array,newComparator<Integer>(){@Overridepublicintcompare(Integero1,Integero2){returno2-o1;// 降序排序}});System.out.println(Arrays.toString(array));// 输出:[8, 6, 5, 3, 2]}}classximplementsCoparable{//重写publicintcompareTo(Objecto){return;}}- todo 不会 字节流字符流
- 序列化全方位解析
- 博主写的很好:捡田螺的小男孩
- JUC基础学习笔记
- spring的注解@Component、@Bean,@Autowire一遍搞定
- 深入理解Spring中的核心注解:@Controller、@Component、@Service、@Repository、@Configuration及其扩展
- Synchrionized 到底所得是什么对象
- CountDownLunch(闭锁)、CyclicBarrier(栅栏锁)、Semaphore(信号量)的区别
- Java中CAS详解
- [线程]线程池 及 线程池的七个参数(面试题!)有手写创建线程池代码
- MySQL 表锁和行锁机制
- Mysql行锁和表锁
- 分析查询语句EXPLAIN详解,一步一步带你了解字段的含义
- 索引失效的10种情况
- MySQL索引优化分析
- MySQL默认隔离级别是RR,但是为什么一些大厂会改成RC?
- 四种线程池拒绝策略
- Java并发编程(六)阻塞队列
- 深拷贝和浅拷贝
- 响应式编程详解
- Java内部类(静态内部类、匿名内部类等)详解
- 动态代理详解
- 静态代理动态代理
- RPC RMI 区别以及在java中的应用
- 一文讲清RPC(Remote Procedure Call)
- Java 中的泛型(超全详解)
- 深入理解InnoDB聚集索引与MyISAM非聚集索引
- 过滤器、拦截器以及AOP的使用和区别
- Spring中的7大事务传播特性
嵌套事务的实现原理? - 多线程顺序打印问题总结
- 线程池常见面试题(20道)
- JAVA多线程之ThreadPoolExecutor创建线程池
- MVCC 机制的原理及实现
- MySQL分页查询–LIMIT、OFFSET
- 使用Stream流对集合排序
- JVM 性能调优监控工具 jps、jstack、jmap、jhat、jstat、hprof 使用详解
- 高频ConcurrentHashMap原理
- 多线程 | join方法:如何实现按照指定顺序执行线程
- MySQL性能优化页分裂与页合并原理
- B+树与聚簇索引以及非聚簇索引的关系
- 什么是Buffer Pool 作者不错:云扬四海(腾讯云社区)
- 详解Condition的await和signal等待通知机制~
- condition 介绍及demo
- 最全Java集合分片处理!!! Java 中 List 分片的 7种方法
- Redis数据过期清除策略和缓存淘汰策略
- 万字详解Redis持久化机制(RDB、AOF)
- 深入理解 Redis 持久化机制 —— RDB 和 AOF
- 缓存穿透、缓存击穿、缓存雪崩区别和解决方案
- JUC线程安全容器和原子类 作者:HongXuan-Yuan
- Java核心基础七:锁机制和并发工具类
- Java核心基础十:JVM垃圾回收机制(GC)
- JUC快速入门(彻底搞懂JUC)
- 队列同步器(AQS)详解
- 并发控制之CyclicBarrier
- Java多线程并发控制工具CountDownLatch,实现原理及案例
- 单例模式,懒汉饿汉
- Java多线程梳理之三_JUC开发包之一 包含Phaser和exchange
- 死锁产生的必要条件与死锁避免
- 详细讲解八种锁现象,彻底理解锁------- JUC并发编程学习笔记(四)8锁现象
- 【netty系列-03】深入理解NIO的基本原理和底层实现(详解)
- Java核心(五)深入理解BIO、NIO、AIO
- 说一下 synchronized 底层实现原理?_synchronized底层实现
- B 树和 B + 树的区别优劣
- 分布式事务
- 2PC 3PC TCC等多种分布式事务解决方案分析对比
- mysql having关键字怎么用
- Cooperative Sticky策略的工作原理
保持稳定性:在可能的情况下,cooperativeSticky会尽量保持当前的分区分配不变。这意味着如果一个消费者已经拥有某些分区,并且这些分区在当前的重平衡过程中没有被删除或添加到其他消费者,那么这些分区将保持不变。
最小化变更:只有当必要的变更发生时(例如,某些消费者离开或加入组),才会进行分区分配的变更。这样可以减少重平衡的频率和影响。
公平分配:在需要调整分区分配时,cooperativeSticky会尝试公平地分配剩余的可用分区给剩余的消费者。
- Callable的实现原理简述
- 面试题系列之多线程交替打印ABC
- Condition
一个Lock对象中可以创建多个Condition实例,一个Condition可以注册多个线程,从而可以有选择性的进行线程通知
而synchronized关键字就相当于整个Lock对象中只有一个Condition实例,所有的线程都注册在它一个身上。
Condition实例的signalAll()方法 只会唤醒注册在该Condition实例中的所有等待线程; - Java多线程并发控制工具信号量Semaphore,实现原理及案例
- 华为Java高级面试题:用两个线程,一个输出字母,一个输出数字,交替输出1A2B3C4D…26Z
- google-guava工具包常用工具类详解(持续更新)
- Guava的基础功能与集合
- MySQL having关键字详解、与where的区别
- 【面试高高手】——JavaIO篇(23题)
- JVM 性能调优 – JVM常用调优工具【jps、jstack、jmap、jstats 命令】
- 使用reduce
- 在 Java 中初始化 List 的五种方法
- Java Stream 流操作详解:
- hive和Doris的区别
- Aviator规则引擎保姆级教程
- MySQL中Buffer pool、Log Buffer和redo、undo日志介绍
- 如何解决MySQL 的深度分页问题?
- MySQL 中的深度分页
- MySQL分表和分区分表的区别
- mysql的主键聚簇索引和B+树非叶子结点只存储索引不存数据,是否矛盾?
- CompletableFuture使用详解 Super Detailed
- !!!使用 VSIZE 函数直接计算实际存储大小:
SELECTVSIZE(col1)+VSIZE(col2)+...+VSIZE(col30)+5ASestimated_row_sizeFROMyour_tableWHEREROWNUM=1;- 分库、分表、分区傻傻分不清 ?
分区和分表的区别与联系
分区和分表的目的都是减少数据库的负担,提高表的增删改查效率。
分区只是一张表中的数据的存储位置发生改变,分表是将一张表分成多张表。
当访问量大,且表数据比较大时,两种方式可以互相配合使用。
当访问量不大,但表数据比较多时,可以只进行分区。
- Oracle 表分区简介
- CompletableFuture
- 线程池的五种状态,优雅关闭线程池
- java锁结构之自旋锁与适应性自旋锁
- Java8 异步非阻塞做法:CompletableFuture 两万字详解!
- Java 回调机制
- 还没细看 todo:MySQL SQL优化:充分理解Using filesort,提升查询性能
- Java Agent 探针技术
- Java基础知识:探针技术
- Redis基础系列-哨兵模式
- 遍历打印A-Z
IntStream.rangeClosed('A', 'Z').forEach(c -> System.out.print((char) c + " ")); - Java i++ 是原子性的吗?多线程i++的结果
- 七大基本排序算法(升序排列)
- 优先级队列PriorityQueue(堆)
- 二叉搜索树
- es数据库和mysql的区别
- 1亿数据乱序,找出最大的前10个;大数据量就分批
- redis集群做分布式锁可能遇到的问题,master挂了,锁还没同步到slave,怎么办?n/2 + 1个加锁才算加锁成功;
- 慢查询优化思路:业务优化,代码优化,sql优化,加第三方介质;
- 除了数据库做流程节点的配置,有没有其他新的配置方法?
- 如果Redis作为分布式锁的时候,主节点挂掉了,但是数据还没有同步到从节点,这种情况 redis解决分布式锁
- 不同层次的面试算法学习规划
- RabbitMQ高级
- RabbitMQ高级深入
- RabbitMQ中的死信及死信队列详解
- 如何处理消息积压?
- RabbitMQ中如何解决消息堆积问题
- 脏页和Redo Log的区别与联系
- Java并发基石ReentrantLock:深入解读其原理与实现
- 锁粗化、锁消除
- Java并发之AQS详解
- Nacos面试题分类整理
- 线程池-创建线程
- 面试官:线程池的7种创建方式,你都清楚吗?
- java中创建使用线程池创建线程示例
- Synchronized锁的升级过程
- Synchronized优化手段:锁膨胀、锁消除、锁粗化和自适应自旋锁
- Java 线程池中 submit() 和 execute()方法有什么区别?
- ExecutorService的submit()方法
- 分布式定时任务,你了解多少?基于Quartz实现分布式任务解决方案!
- xxl-job分布式定时任务
- 阿里面试官:如何实现三个线程交替循环打印?
- MySQL三大日志——binlog、redoLog、undoLog详解
- countdownlantch闭锁和cyclicbarrirer栅栏和semaphore信号量
- CountDownLatch、CyclicBarrier和Semaphore
- JVM 中Minor GC、Major GC、Full GC 的区别?
- 拦截器(Interceptor)与过滤器(Filter)
- Redis三种集群方案详解(主从复制、哨兵模式、分片集群)
- Redis三种集群模式
- redis五种数据结构
- 一文理解如何解决Kafka消息积压问题
- 面试官:消息队列积压百万,除了加机器还有哪些解法?
- synchronized 和 Lock 区别
- ThreadLocal 的使用场景,inheridThreadLocal的原理,AtmoicInteger的实现原理,Kafka的重平衡,volitale原理,可以保证原子性么?
- Spring事务失效,常见的情况有哪些?
- 数据结构:八种数据结构大全
- Redis实现分布式锁的7种方案
- HTTP 返回状态值详解
- aop
- 面试问题记录:a. 有没有除了业务之外的,技术开发,比如,发现系统问题,提出自己的设计,解决办法,优化系统性能? b. 做的项目里有没有技术比较难的,讲一讲?c. 线程池?d.Kafka怎么解决消费积压?f.数据库索引的设计原则,符合索引的最左原则; e.你还有什么问题问我么?