Java高级工程师甚至架构师需要掌握哪些知识点?
Java高级工程师需要弄明白的20个知识点
1、对多线程的了解,尤其是对线程池的理解,对ThreadPoolExecutor构造参数各个作用的理解、了解Fxied Pool、Cached Pool分别的作用
2、对锁的了解,synchronized、Lock接口(及其对应的实现的理解)
3、对JDK中HaskMap、ArrayList的源代码级别理解;对并发包中ConcurrentHashMap源代码级别的理解(可以基于JDK8、在了解JDK7)
4、熟练使用Mybais、Spring框架
5、对Spring Bean生命周期的理解、Spring 事务管理的理解(主要关注隔离性、事务的几种传播方式)
6、对Spring AOP能够用于哪些场景、实现AOP的核心技术是什么(JDK Proxy、cglib包)
7、对Tomcat的架构有所理解(底层通讯框架是什么:NIO、如何做到隔离:自定义的classloader)
8、对分布式理论的了解(CAP、BASE等)
9、对分布式锁理论的了解,及其哪些方式可以实现、如何实现(Redis、Zookeeper)
10、对分布式事务理论的了解(2PC、3PC、TCC),及其哪些方式可以实现、如何实现(MQ等)
11、对Redis的理解以及应用(分布式应该如何配置)有多少种的数据结构、持久化是如何设计
12、对Zookeeper的理解以及应用(选主过程ZAB协议,几种节点Leader、Follewer、Observer,4种节点:持久、持久有序、临时、临时有序)
13、基本的设计模式:工厂、单例、表驱动法、模板等
14、线程的几大状态,以及状态变化
15、数据库大数据如何优化(几千万,几亿级的)
16、如何做分布式事务锁?
17、dubbo、Sping Boot、Sping cloud等分布式框架各有什么特点,选型的依据是什么?
18、介绍下zeekeeper如何领导者决策过程
19、Java基础技术体系、JVM内存分配、垃圾回收、类装载机制、性能优化、反射机制、网络编程、常用数据结构和相关算法
20、常见的一些解决方案及其原理:单点登录、分布式缓存、SOA、全文检索、消息中间件,负载均衡、连接池、流计算等
架构师需要的知识点:
1.框架源码分析 设计模式:Singleton单例模式,Factory工厂模式,Proxy...
2.性能优化 JVM性能优化:剖析JVM整体结构,详解垃圾回收机制GC,JVM性能调优与工具...
3.掌握池技术 对象池,连接池,线程池,Java反射技术,写框架必备的技术,但是有严重的性能...
4.掌握nio,值得注意的是“直接内存”的特点,使用场景。
5.掌握Java多线程同步异步。
某职业网站最新数据统计显示:北京地区Java架构师平均月薪42100元,年薪30万-50万架构师占比最多,达39%。经验要求,3-5年工作经验要求的占比最多,达48%;学历要求,本科学历要求的占比最多,达87%。 不同公司不同行业,定位也有会所不同。
想提升可以学习百战程序员的课程。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有