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%。 不同公司不同行业,定位也有会所不同。
想提升可以学习百战程序员的课程。
1、编码能力
代码能力是基本功,包括Java语言的各个方面、包括对并发的理解、对内存使用对理解、对Java运维的理解等等。另外,你还要对社区里常用的框架有十分清晰的了解,比如spring,你要了解它实现的ioc、aop、orm、web机制是否有清楚的认识,有丰富的经验等。
2、调试能力
本质上讲,工程师们通过不断调试可以持续强化其通过静态代码去预测运行状态的能力。调试能力是项目能否按时、高质量提交的关键,大项目都是通过不断地调试进行优化和纠错的,所以调试能力也是工程师编程能力提升的关键手段。
3、性能优化能力
影响系统性能的因素众多,包括:数据结构、操作系统、虚拟机、CPU、存储、网络等。为了对系统性能进行调优,高级Java工程师需要掌握所有相关的技术。因此可以说性能优化能力是一个综合能力。性能调优集中在:JVM调优,线程池调优、SQL调优、索引优化、数据库垂直拆分等。
4、编译部署能力
编译并在线上部署运行程序是系统上线的最后一个环节。随着SOA架构的普及以及业务复杂度的增加,大部分系统只是一个完整业务的一个环节,因此,本地编译和运行并不能完全模拟系统在线运行。为了快速验证所编写程序的正确性,编译并在线上部署就成了必要环节。
毫不夸张的说,Java是现阶段中国互联网公司中覆盖度最广的编程语言,掌握了Java技术体系,不管在成熟的大公司、快速发展的小公司、亦或是创业阶段的公司你都能有立足之地。
如果你想成为高薪高职的高级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%。 不同公司不同行业,定位也有会所不同。
想提升可以学习百战程序员的课程。