Skip to content

jdkbean/Java-Interview-Advanced

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

中华石杉--互联网Java进阶面试训练营

[original] [open-source-organization] [reading] [coding] [sharing] [stars] [forks] [contributors] [help-wanted] [issues] PRs Welcome

内容说明:

本仓库存放的是公众号【狸猫技术窝】和中华石杉老师合作的课程《互联网Java进阶面试训练营》的笔记,版权归狸猫技术窝所有,侵权将追究法律责任

训练营详细信息请关注公众号【狸猫技术窝】了解

公众号:狸猫技术窝

更多技术干货,请扫描下方二维码,关注公众号狸猫技术窝

我的公众号

目录

面试指南

备战面试

常见面试题总结

面经

面试突击第一季

搜索引擎

分布式缓存

分库分表

分布式服务框架Dubbo

分布式锁

分布式事务

分布式会话

分布式限流降级

面试突击第二季-分布式

第三季

开篇词

Java集合包

Java并发编程

Spring

34、额外加餐:能画一张图说说Spring Web MVC的核心架构吗?

35、额外加餐:能画一张图说说Spring Cloud的核心架构吗?

JVM

36、JVM中有哪几块内存区域?Java 8之后对内存分代做了什么改进?

37、你知道JVM是如何运行起来的吗?我们的对象是如何分配的?

38、说说JVM在哪些情况下会触发垃圾回收可以吗?

39、说说JVM的年轻代垃圾回收算法?对象什么时候转移到老年代?

40、说说老年代的垃圾回收算法?常用的垃圾回收器都有什么?

41、你们生产环境中的Tomcat是如何设置JVM参数的?如何检查JVM运行情况?

42、你在实际项目中是否做过JVM GC优化,怎么做的?

43、你知道发生OOM之后,应该如何排查和处理线上系统的OOM问题?

网络

44_你能聊聊TCP/IP四层网络模型吗?OSI七层网络模型也说一下!(上)

45_你能聊聊TCP/IP四层网络模型吗?OSI七层网络模型也说一下!(中)

46_你能聊聊TCP/IP四层网络模型吗?OSI七层网络模型也说一下!(下)

47、浏览器请求www.baidu.com的全过程大概是怎么样的?(上)

48、浏览器请求www.baidu.com的全过程大概是怎么样的?(下)

49、画一下TCP三次握手流程图?为啥是三次而不是二次或者四次呢?

50、聊聊HTTP协议的工作原理!

51、聊聊HTTPS的工作原理?为啥用HTTPS就可以加密通信?

52、聊聊http的长连接的工作原理到底是啥?

53、MySQL、MyISAM和InnoDB存储引擎的区别是啥?(上)

54、MySQL、MyISAM和InnoDB存储引擎的区别是啥?(下)

55、聊聊MySQL的索引实现原理?各种索引你们平时都怎么用的?(上)

56、聊聊MySQL的索引实现原理?各种索引你们平时都怎么用的?(下)

MySQl

57、你能说说事务的几个特性是啥?有哪几种隔离级别?(上)

58、你能说说事务的几个特性是啥?有哪几种隔离级别?(下)

59、你能说说MySQL数据库锁的实现原理吗?如果死锁了咋办?

60、MySQL的SQL调优一般都有哪些手段?你们一般怎么做?

61、聊聊Socket的工作原理?Socket跟TCP IP之间是啥关系?

62、进程间是如何通信的?线程间又如何切换呢?

63、你能聊聊BIO、NIO、AIO分别都是啥?有什么区别?(上)

64、你能聊聊BIO、NIO、AIO分别都是啥?有什么区别?(下)

线上生产实践

65、线上服务器CPU 100%了!该怎么排查、定位和解决?

66、线上机器的一个进程用kill命令杀不死该怎么办?磁盘空间快满了又该怎么处理?

JAVA并发(高阶部分)

后续深入硬件级讲解volatile、synchronized、CAS底层原理的说明

67、再谈原子性:Java规范规定所有变量写操作都是原子的

68、32位Java虚拟机中的long和double变量写操作为何不是原子的?

69、volatile原来还可以保证long和double变量写操作的原子性

70、到底有哪些操作在Java规范中是不保证原子性的呢?

71、可见性涉及的底层硬件概念:寄存器、高速缓存、写缓冲器(上)

72、可见性涉及的底层硬件概念:寄存器、高速缓存、写缓冲器(下)

73、深入探秘有序性:Java程序运行过程中发生指令重排的几个地方

74、JIT编译器对创建对象的指令重排以及double check单例实践

75、现代处理器为了提升性能的指令乱序和猜测执行的机制!

76、高速缓存和写缓冲器的内存重排序造成的视觉假象

77、synchronized锁同时对原子性、可见性以及有序性的保证

78、深入分析synchronized是如何通过加锁保证原子性的?

79、synchronized是如何使用内存屏障保证可见性和有序性的?

80、再看volatile关键字对原子性、可见性以及有序性的保证

81、高速缓存的数据结构:拉链散列表、缓存条目以及地址解码(上)

82、高速缓存的数据结构:拉链散列表、缓存条目以及地址解码(下)

83、结合硬件级别的缓存数据结构深入分析缓存一致性协议(上)

84、结合硬件级别的缓存数据结构深入分析缓存一致性协议(下)

85、采用写缓冲器和无效队列优化MESI协议的实现性能

86、硬件层面的MESI协议为何会引发有序性和可见性的问题?

87、内存屏障在硬件层面的实现原理以及如何解决各种问题

88、在复杂的硬件模型之上的Java内存模型是如何大幅简化的?

89、面试的时候如何从内存屏障、硬件层面的原理来震慑面试官

90、Java虚拟机对锁的优化:锁消除、锁粗化、偏向锁、自旋锁(上)

91、Java虚拟机对锁的优化:锁消除、锁粗化、偏向锁、自旋锁(下)

系统安全性

92、再来看看CAS是如何基于MESI协议在底层硬件层面实现加锁的?

93、为什么越来越多的公司面试的时候,喜欢问安全相关的连环炮?

94、能不能说说一般黑客常用的XSS网络攻击的原理是什么?

95、能不能说说我们经常听到的SQL注入攻击背后的原理是什么?

96、听说过CSRF攻击吗?你知道他背后的原理是什么吗?

97、如果你们的系统允许用户上传文件,可能会遭到什么样的黑客攻击?

98、让所有工程师闻声色变的DDoS攻击到底是什么东西?

网络和IO

99、基于SYN Flood模式的DDoS攻击,背后的原理是什么呢?

100、再来看看基于DNS Query Flood和HTTP Flood的DDoS攻击

101、在分布式架构中,Zuul网关是如何防止网络攻击的?

102、一个对技术有追求的面试官,是怎么深挖网络与IO的面试连环炮的?

分布式架构

中间件系统

系统架构优化与设计

开源框架

Java Core

专栏复习

About

中华石杉--互联网Java进阶面试训练营

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors