Skip to content

Commit 64d954e

Browse files
committed
面试题目完善
1 parent 1afde6f commit 64d954e

File tree

68 files changed

+848
-158
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+848
-158
lines changed

Elasticsearch面试/6. Lucene全文搜索的原理.md

Whitespace-only changes.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
### Elasticsearch
2+
1. 详细描述一下Elasticsearch索引文档的过程。
3+
2. 详细描述一下Elasticsearch搜索的过程。
4+
3. Elasticsearch 的倒排索引是什么。
5+
4. Elasticsearch是如何实现master选举的。
6+
5. lucence内部结构是什么。
7+
6. Lucene全文搜索的原理
8+
7. 在并发情况下,Elasticsearch 如何保证读写一致呢?
9+
8. 详细阐述一下 Elasticsearch 搜索的过程。
10+
9. Elasticsearch 索引数据多了怎么办呢,如何调优,部署
11+
10. Elasticsearch 对于大数据量(上亿量级)的聚合如何实现?
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
![](https://user-gold-cdn.xitu.io/2020/5/14/1720eda10954cb6b?w=1120&h=549&f=png&s=128315)

Java面试题集结号/JVM 篇/31. Java需要开发人员回收内存垃圾吗?.md

Whitespace-only changes.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
垃圾回收的目的是识别并且丢弃应用不再使用的对象来释放和重用资源。
2+
3+
触发主GC(Garbage Collector,垃圾回收)的条件:
4+
(1)当应用程序空闲时,即没有应用线程在运行时,GC会被调用。
5+
(2)Java堆内存不足时,GC会被调用。
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
这两个方法用来提示JVM要进行垃圾回收。但是,立即开始还是延迟进行垃圾回收是取决于JVM的。
Lines changed: 33 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
### JVM 篇
2-
1. 什么情况下会发生栈内存溢出。什么时候发生堆溢出?你怎么排错
3-
2. JVM怎么判断对象是无用对象?有哪些方法。
2+
1. 什么情况下会发生栈内存溢出。什么时候发生堆溢出?你是怎么排错的?
3+
2. JVM怎么判断对象是可回收对象?有哪些方法。
44
3. JVM的内存结构,新生代与老年代的比例,Eden和Survivor比例。
55
4. 你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms和G1,包括原理,流程,优缺点。
66
5. 简单说说你了解的类加载器,可以打破双亲委派么,怎么打破。
@@ -10,19 +10,43 @@
1010
9. 垃圾回收算法的实现原理。
1111
10. JVM内存模型的相关知识了解多少,比如重排序,内存屏障,happen-before,主内存,工作内存等。
1212
11. 说一下Java对象的创建过程
13-
12. 你们线上应用的JVM参数有哪些
14-
13. g1和cms区别,吞吐量优先和响应优先的垃圾收集器选择
13+
12. 你们线上应用的JVM参数配置了哪些
14+
13. G1和cms区别
1515
14. 怎么打出线程栈信息。
1616
15. 说一下类加载的执行过程
17-
16. JVM垃圾回收机制,何时触发MinorGC等操作
18-
17. 各种回收器,各自优缺点,重点CMS、G1。
17+
16. JVM垃圾回收机制,何时触发MinorGC等操作呢?
18+
17. ZGC 垃圾收集器,了解过吗
1919
18. 对象的访问定位有哪两种方式?
2020
19. 说一下 jvm 调优的工具?
21-
20. 什么时候对象会进入老年代
22-
21. 什么是内存泄漏和内存溢出?(溢出是指创建太多对象导致内存空间不足,泄漏是无用对象没有回收)
21+
20. 对象什么时候会进入老年代
22+
21. 内存泄漏和内存溢出区别?
2323
22. 什么是tomcat类加载机制?
2424
23. 了解逃逸分析技术吗
2525
24. 调用System.gc()会发生什么?
2626
25. 谈谈Minor GC条件,full GC条件
2727
26. Stop The World 了解过吗?
28-
27. 谈谈你认识多少种OOM?
28+
27. 谈谈你认识多少种OOM?如何避免OOM?
29+
28. 了解过JVM调优没,基本思路是什么?如何确定它们的大小呢?
30+
29. 淘宝热门商品信息在JVM哪个内存区域
31+
30. 字节码的编译过程
32+
31. Java需要开发人员回收内存垃圾吗?
33+
32. Java中垃圾回收有什么目的?什么时候进行垃圾回收?
34+
33. System.gc()和Runtime.gc()会做什么事情?
35+
34. 主内存与工作内存
36+
35. 内存间交互操作
37+
36. volatile 禁止内存重排序
38+
37. 内存模型三大特性
39+
38. 谈谈先行发生原则
40+
39. JVM 堆内存溢出后,其他线程是否可继续工作?
41+
40. 说一下JVM 常用参数有哪些?
42+
41. VM 为什么使用元空间替换了永久代?
43+
42. Java堆的结构是什么样子的?什么是堆中的永久代(Perm Gen space)?
44+
43. JVM的永久代中会发生垃圾回收么?
45+
44. 什么是字节码?采用字节码的最大好处是什么?什么Java是虚拟机?
46+
45. MinorGC 的过程
47+
46. CPU 占用过高如何分析
48+
47. Serial与Parallel GC之间的不同之处?
49+
48. WeakHashMap 是怎么工作的?
50+
49. 解释 Java 堆空间及 GC?
51+
50. 你能保证 GC 执行吗?
52+
51. JVM中哪个参数是用来控制线程的栈堆栈小的?
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
![](https://user-gold-cdn.xitu.io/2020/5/14/172108007fefffe5?w=1280&h=617&f=png&s=254427)
2+
File renamed without changes.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
这个是在ReentrankLock中实现的,synchronized没有,是用一个队列实现的,在公平锁好理解,就是先进这个队列的,也先出队列获得资源,而非公平锁的话,则是还没有进队列之前可以与队列中的线程竞争尝试获得锁,如果获取失败,则进队列,此时也是要乖乖等前面出队才行

0 commit comments

Comments
 (0)