forked from whx123/JavaHome
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
104 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
### JVM 篇 | ||
1. 什么情况下会发生栈内存溢出。什么时候发生堆溢出?你怎么排错 | ||
2. JVM怎么判断对象是无用对象?有哪些方法。 | ||
3. JVM的内存结构,新生代与老年代的比例,Eden和Survivor比例。 | ||
4. 你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms和G1,包括原理,流程,优缺点。 | ||
5. 简单说说你了解的类加载器,可以打破双亲委派么,怎么打破。 | ||
6. JVM内存为什么要分成新生代,老年代,持久代。新生代中为什么要分为Eden和Survivor。 | ||
7. JVM 出现 fullGC 很频繁,怎么去线上排查问题? | ||
8. JVM中一次完整的GC流程是怎样的,对象如何晋升到老年代,说说你知道的几种主要的JVM参数。 | ||
9. 垃圾回收算法的实现原理。 | ||
10. JVM内存模型的相关知识了解多少,比如重排序,内存屏障,happen-before,主内存,工作内存等。 | ||
11. 说一下Java对象的创建过程 | ||
12. 你们线上应用的JVM参数有哪些。 | ||
13. g1和cms区别,吞吐量优先和响应优先的垃圾收集器选择。 | ||
14. 怎么打出线程栈信息。 | ||
15. 说一下类加载的执行过程 | ||
16. JVM垃圾回收机制,何时触发MinorGC等操作 | ||
17. 各种回收器,各自优缺点,重点CMS、G1。 | ||
18. 对象的访问定位有哪两种方式? | ||
19. 说一下 jvm 调优的工具? | ||
20. 什么时候对象会进入老年代? | ||
21. 什么是内存泄漏和内存溢出?(溢出是指创建太多对象导致内存空间不足,泄漏是无用对象没有回收) | ||
22. 什么是tomcat类加载机制? | ||
23. 了解逃逸分析技术吗 | ||
24. 调用System.gc()会发生什么? | ||
25. 谈谈Minor GC条件,full GC条件 | ||
26. Stop The World 了解过吗? | ||
27. 谈谈你认识多少种OOM? |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
### 数据库 | ||
1. MySQL 索引使用的注意事项 | ||
2. 说说分库与分表设计 | ||
3. 说说你是怎么优化SQL的 | ||
4. MySQL 遇到的死锁问题,如何解决 | ||
5. 存储引擎的 InnoDB 与 MyISAM区别 | ||
6. 数据库索引的原理,为什么要用 B+树,如何创建合理的索引,索引如何优化。 | ||
7. 聚集索引与非聚集索引的区别 | ||
8. limit 100000 加载很慢怎么解决 | ||
9. 如何选择合适的分布式主键方案 | ||
10. 数据库隔离级别有哪些,各自的含义是什么,MYSQL默认的隔离级别是是什么。 | ||
11. 什么是幻读,脏读,不可重复读? | ||
12. 高并发下,如何做到安全的修改同一行数据。 | ||
13. 乐观锁和悲观锁是什么。 | ||
14. SQL优化的一般步骤是什么,怎么看执行计划,如何理解其中各个字段的含义。 | ||
15. select for update 是什么含义,会锁表还是锁行或是其他。 | ||
16. 数据库的ACID是什么。 | ||
17. 如果某个表有近千万数据,CRUD比较慢,如何优化。 | ||
18. 如何写sql能够有效的使用到复合索引。 | ||
19. mysql中in 和exists 区别。 | ||
20. 数据库自增主键可能遇到的问题。 | ||
21. MVCC的含义,底层原理。 | ||
22. 数据库中间件了解过吗,sharding jdbc,mycat? | ||
23. MYSQL的主从延迟怎么解决。 | ||
24. 大表优化方案 | ||
25. 什么是数据库连接池?为什么需要数据库连接池? | ||
26. 一条SQL语句在MySQL中如何执行的 | ||
27. InnoDB引擎中的索引策略 | ||
28. 数据库存储日期格式时,如何考虑时区转换问题? | ||
29. 一条sql执行过长的时间,你如何优化,从哪些方面? | ||
30. MYSQL数据库服务器性能分析的方法命令有哪些? | ||
31. BLOB和TEXT有什么区别? | ||
32. mysql里记录货币用什么字段类型好 | ||
33. Mysql中有哪几种锁? | ||
34. float 和 double 的区别是什么? | ||
35. mysql 的内连接、左连接、右连接有什么区别? |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
### 消息队列 | ||
1. 消息队列的使用场景。 | ||
2. 消息中间件如何解决消息丢失问题 | ||
3. 消息的重发,补充策略。 | ||
4. 如何保证消息的顺序性。 | ||
5. 怎么利用mq实现最终一致性 | ||
6. kafka 和其他消息队列的区别,kafka 主从同步怎么实现。 | ||
7. 用过哪些MQ,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗,你们公司的MQ服务架构怎样的。 | ||
8. kafka吞吐量高的原因。 | ||
9. rabbitmq如何实现集群高可用。 | ||
10. 使用kafka有没有遇到什么问题,怎么解决的。 | ||
11. MQ有可能发生重复消费,如何避免,如何做到幂等。 | ||
12. MQ的消息延迟了怎么处理,消息可以设置过期时间么,过期了你们一般怎么处理。 | ||
13. rabbitmq 有几种广播类型? | ||
14. 使用 kafka 集群需要注意什么? |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
### 计算机网络 | ||
1. TCP三次握手和四次挥手的流程,为什么断开连接要4次,如果握手只有两次,会出现什么。 | ||
2. TIME_WAIT和CLOSE_WAIT的区别。 | ||
3. Session和cookie的区别。 | ||
4. Http和https的三次握手有什么区别。 | ||
5. http1.0和http1.1有什么区别。 | ||
6. 说说你知道的几种HTTP响应码,比如200, 302, 404。 | ||
7. 当你用浏览器打开一个链接(如:http://www.javastack.cn)的时候,计算机做了哪些工作步骤。 | ||
8. TCP/IP如何保证可靠性,说说TCP头的结构。 | ||
9. HTTP 请求的 GET 与 POST 方式的区别 | ||
10. 如何避免浏览器缓存。 | ||
11. OSI与TCP/IP各层的结构与功能,都有哪些协议? | ||
12. TCP,UDP 协议的区别 | ||
13. 滑动窗口和流量控制 | ||
14. 拥塞控制 | ||
15. 如何理解HTTP协议的无状态性。 | ||
16. HTTP有哪些method | ||
17. HTTP的长连接是什么意思,短连接呢 | ||
18. HTTPS原理,加签,验签,什么是数字签名?什么是数字证书?对称加密和非对称加密等。 | ||
19. HTTP 和 HTTPS 的区别? | ||
20. ARP 协议的工作原理? | ||
21. 怎么解决拆包和粘包? | ||
22. DNS 的解析过程? | ||
23. 什么是DoS、DDoS、DRDoS攻击?如何防御? | ||
24. WebSocket与socket的区别 |