总结:Spring+Redis+Docker+Dubbo+高并发架构

Java程序员必经之路


1. ArrayList和 linkedlist区别。 ArrayList是否会越界。
2 ArrayList和 hashset有何区别。 hashset存的数是有序的么。
3. volatile和 synchronized区别
4.多态的原理
5.数据库引擎 INnodb和 myisam区别
6. Redis的数据结构
7. Redis是基于内存的么
8. Redis的 ist zset的底层实现
9.http和https的区别,tcp握手过程
10.jwm垃圾回收算法手写冒泡
11.手写单例包括多线程下
12.Java线程间怎么实现同步,noty0与 notify0的区别
13.数据库的悲观锁和乐观锁应用场景
14排序算法的复杂度,快速排序非递归实现
15.海量数据过滤,黑名单过滤一个url
 


1. list set map底层使用什么实现的有哪些典型实现
2. hashmap扩容是怎么扩容的,为什么是2的幂
3. concurrenthashmap为什么线程安全,采用了什么措施应对高并发
4.线程池的参数有什么意义
5. Springmvc请求流程
6. Spring IOC, autowired如何实现
7. Spring boot
8. Spring Clound的基本架构设计
9. Dubbo和 Spring Clound的区别在哪里,优劣势
10.说说一致性Hash算法.

 


1.分布式架构设计哪方面比较熟悉
2.讲讲你对CDN的了解,与分布式缓存和本地缓存的区别
3.多线程和高并发有什么区别
4.高并发下有哪些常用的技术解决方案,举三个高并发场景设计例子
5.说一个你对M优化的实际案例,包括实际步骤和方法
6. Docker有使用过和了解吗? Docker和M的区别是什么?
7. Docker的基本架构和使用场景?
8.负载均衡有接触过哪些开源框架,优劣势是什么?
9.数据库分库分表需要怎样来实现
10.数据库端的常用优化策略?
11.如果让你来设计秒杀系统,你的设计思路是什么,为什么要这样设计?
 

 

  1. java的基础知识点,主要围绕在集合类和多线程等:ArrayList、LinkedList、HashSet、HashpMap的数据结果,以及如何扩容、以及ConcurrentHashMap相关的多线程安全等。

  2. JVM的内存分配、几个常见的垃圾回收算法以及原理、还有对应的JVM优化参数需要牢记。

  3. 网络:TCP的三次握手等网络都必问,重点掌握网络协议。

  4. Redis:作为分布式缓存的主力,基本也是BAT每次必考,重点是Redis的数据结构、内存、算法、持久化,以及与别的缓存memcached的优劣势。

  5. 多线程:状态流转、多线程的实现,以及与高并发的区别等。

  6. Spring框架问得是最多的,BAT非常喜欢问,重点掌握。

  7. 最后就是分布式架构设计

 

  • 常用的分布式架构设计方案:单点登录、分布式缓存、存储、消息的选型,还有就是数据库端的优化方案(需要提前了解)。

  • 最好能提前了解深入一个类似秒杀这样的项目,如果面试官问到类似的项目,你能把设计思路讲出来,这对你的面试结果是很大的加分项。

 

 

你可能感兴趣的:(总结:Spring+Redis+Docker+Dubbo+高并发架构)