Home
Projects
Resources
Alternatives
Blog
Sign In
Nivelle JavaInterview
Save
Abandoned
java中高级基础指南
Overview
Reviews
Resources
Project README
java 核心基础总结
姊妹项目:
java天天学
算法数据结构
海量数据如何去重?
海量数据去重
大数据排序
海量数据找topK
算法
堆排序
冒泡排序
快速排序
排序算法
Java中ArrayList循环遍历并删除元素的陷阱
树相关的算法
常见数据结构
常见数据结构
hashMap比较
arrayList线程不安全分析
moudCount的作用
CopyOnWriteArrayList
hashtable和hashMap
hashMap非线程安全分析
hashMap key==null 分析
String
String最大长度
hashMap分析
ConcurrentHashMap分析
stack实现
树结构
二叉树
B树
阻塞队列
红黑树
hashMap扩容分析
hashMap的树化
java基础相关
hashcode相等两个类一定相等吗equals 呢 相反呢
hashCode()和equals()
线程池用过么?都有哪些参数? 底层如何实现?
多线程面试
juc总结
任务的抽象
AQS源码
线程池源码
Synchronized 和lock什么区别? 底层细节
Synchronized
内存可见性
java锁保证内存可见性
threadLocal是什么?底层如何实现?写一个例子
threadLocal基本原理
volidate的工作原理
volidate基本原理
深入理解volidate
Thread and lock
thread and lock
cas知道吗?如何实现?
cas
notify丢失虚假唤醒
四种写法,写一个单例模式
彻底理解单例模式
设计模式
适配器装饰器模式
Integer x= 5, int y=5 比较x==y有哪些步骤
原生类型和包装器类型**
javaCore
序列化
位运算
动态代理
基于CGLIB
基于JDK
代码实现
NIO
javaNIO
NIO细节
Java 非阻塞 IO 和异步 IO
tomcat中的应用
基于socket的网络编程
socket
jMM
jmm
注解原理
注解原理
快速失败,安全失败
设计模式
设计模式
数据库相关
使用mysql索引都有哪些原则?索引有什么数据结构? B+tree 和 B tree 什么区别
mysql索引实现
索引使用
mysql 有哪些存储引擎?有什么区别?
mysql索引类型比较
mysqlAUTO_INCREMENT
mysql优化原理
索引使用B+tree树的原因
执行计划分析
设计高并发系统数据库层面应该怎么设计? 数据库锁有哪些类型?如何实现
高并发系统设计-数据层
架构设计 数据库方案
数据库事物有哪些?
数据库锁
mysql日志类型
如何设计可以动态扩容的分库分表方案? 以及底层原理?常见的分库分表中间件?优缺点? 如何让未分库分表的数据动态切换到分库分表的系统上?分库分表解决主键问题?
分库分表方案以及问题
跨库分页
mysql实践
分布式事物?如何实现?TCC? 网络出现问题,如何容错?
2pc和3pc
分布式系统事务一致性解决方案
TCC
分布式锁实现
分布式寻址方式方式有哪些算法? 一致性hash算法
一致性hash算法
递归算法
mysql面试实战
知识点过一遍
数据库规范
缓存相关
redis和 memcheched什么区别?为什么单线程的redis比多线程的memched效率高?
redis的特点和原理
redis和memcheched的比较
redis主要数据类型?分别那种场景下使用?
redis实战
redis的主从复制怎么实现的?redis集群模式是如何实现的? redis的key是如何寻址的?
redis主从复制
redis集群和哨兵模式配置
集群原理
集群配置
高级应用
redis原理
redis基本知识
redis基本知识
redis单线程
缓存概念
缓存如何使用?缓存使用不当带来什么问题
缓存界的三大问题
热点数据处理
热点数据处理
分布式架构相关
zk原理? zk的应用? paxos算法?
zk原理
paxos算法
zk概述
zk启动过程分析
zk选举过程分析
zkWatcher机制分析
集群节点个数
分布式事物
分布式事物解决方案
dubbo的实现过程?注册中心挂了可以继续通信么?dubbo常见配置有哪些
dubbo常见配置
dubbo支持哪些序列化协议?hession?hession数据结构? pb知道么?为啥PB的效率是最高的?
dubbo学习
xstream、protobuf、protostuff
dubbo负载均衡策略和高可用策略有哪些?动态代理策略呢?为什么要进行系统拆分啊? 拆分不用dubbo可以么? dubbo和thirft什么区别?
rpc框架
dubbo的负载均衡
dubbo知识点
dubbo实现
dubbo服务注册和发现
不用应用环境下的会话保持
会话保持
自己实现RPC
Dubbo原理简介
轻量级分布式 RPC 框架
简单rpc
dubbo源码
dubbo调用链
如何设计一个高并发高可用系统?
高并发
高可用
大型网站架构演化历程
如何限流?工程中怎么做的?说下具体实现?
限流
常见限流方案
负载均衡
六大负载均衡原理
lvs
如何降级?如何进行系统拆分,如何进行数据库拆分
服务降级
nginx
nginx基础
消息相关
netty 可以干什么? NIO,BIO ,AIO 都是什么? 有什么区别
NIO,BIO,AIO
为什么使用消息队列?消息队列的优点和缺点?
消息队列的意义
如何保证消息队列的高可用?如何保证消息不被重复消费?
消息队列的幂等
消息队列的高可用
kafka,activemq,rabbitmq,rocketmq 都有什么优点和缺点?如何自己设计一个消息队列,该如何进行架构设计
消息队列对比
消息队列大全
消息队列细节学习
kafka数据一致性和zk的比较
kafka原理学习
rabbitMQ基础
rabbitMQ
知识点
jvm相关
jvm内存模型?用过哪些垃圾回收器?说说
java内存模型
Java8内存模型—永久代(PermGen)和元空间(Metaspace)
常量区
jvm常见配置
线上频繁发生fullGC 如何处理? CPU使用频率过高怎么办?
Java GC是在什么时候,对什么东西,做了什么事情
什么时候会发生FullGC
使用CMS垃圾收集器产生的问题和解决方案
垃圾回收机制
G1收集器
经典回答
类加载机制? 类加载器?分别加载哪些文件?手写一个
加载器原理
图解tomcat类加载
类加载时机和过程
对象初始化
jvm优化?使用什么方法?达到什么效果**
jvm
java调优
java常见调优
排查过程
死循环
oom排查
oom排查2
框架相关
spring 哪些机制?aop如何实现?IOC如何实现
自己实现AOP和IOC
IOC原理
IOC源码分析
AOP源码分析
spring头文件原理
面试top
spring考点细节
spring事务失效原因和解决办法
spring常见扩展点
FactoryBean和beanFactory
dispatcher
sipring面试关注点
初始化和生命周期
springboot
springboot原理
springboot源码
starter编写
springMVC
springMVC原理
springMVC核心原理分享
网络相关
https
https原理
http的工作流程?越细节越好。 http1.0 1.1 1.2有哪些区别
一次url请求
tcp 三次握手,四层分手的工作流程〉为什么不是其他次数?
计算机网络面试常见
get/post区别
get/post
cookie 和 session
安全性
session实现
OAuth2.0
OAuth2.0原理
子网掩码
子网掩码的原理和应用
dump
dump使用
其他
git原理
git原理
maven
maven
理论教程
常见加解密算法
加解密
docker理解
docker
系统设计
秒杀设计一
秒杀设计二
秒杀设计三
秒杀设计
链接收集
大厂面试集锦
备战阿里
java core
经典面试
面试大纲
面试大纲答案
Open Source Agenda is not affiliated with "Nivelle JavaInterview" Project. README Source:
nivelle/javaInterview
Stars
222
Open Issues
0
Last Commit
3 years ago
Tags
Dubbo
Hashcode
Hashmap
Interview
Interview Practice
Interview Prep
Ioc
Java
Job
Jvm
Lock
Mysql
Nio
Redis
Open Source Agenda Badge
Submit Review
Review Your Favorite Project
Submit Resource
Articles, Courses, Videos
Submit Article
Submit a post to our blog
From the blog
Dec 11, 2022
How to Choose Which Programming Language to Learn First?
From the blog
Dec 11, 2022
How to Choose Which Programming Language to Learn First?
Home
Projects
Resources
Alternatives
Blog
Sign In
Sign In to OSA
I agree with
Terms of Service
and
Privacy Policy
Sign In with Github