机遇与挑战并存,高并发技术虽然有着较高的学习门槛,但是一旦掌握该知识就会在技术上取得质的提升,从而快速提高自身的竞争力,得到丰厚的回报。根据国内外各大招聘网站提供的信息显示,高并发技术已经成为高级Java工程师、分析师、架构师必须掌握的一门技术。
大家都知道架构师是软件开发团队中非常重要的角色,甚至许多人也把成为架构师作为自己不懈奋斗的目标。然而架构师的一项非常重要的能力指标,就是能够设计出一套解决高并发的软件系统,由此可见高并发技术的重要性。
从目前的情况来看,无论是游戏行业还是互联网行业,无论是软件开发公司还是大型网站,都对高并发技术人才有着巨大的需求,因此,无论为了是面试还是为了工作,学习高并发技术刻不容缓。
当然,高并发相关岗位的薪资待遇也一直处于业内的高水平,熟练掌握或精通高并发的专业人员更是难求。据一些资深HR朋友介绍,有高并发工作经验的求职简历一旦挂到各大招聘或求职网站上,很快就会被高薪抢走。
为了更加清晰地认识高并发的技术需求,笔者在查阅了大量的高级Java岗位的招聘需求后,归纳了以下招聘中需求的热点技术。本书中的一些技术选型,也参考自其中。
(1)有三年以上软件开发工作经验。
(2)熟悉Linux系统,熟悉常用SHELL命令。
(3)熟悉常用的构建工具,如Gradle、Maven等。
(4)熟练使用Intellij Idea、Tomcat、Nginx、Git/GitHub等工具。
(5)熟练掌握Java SE、Web、数据库基础知识。
(6)对常用开源框架,如Spring生态( Spring Boot/Cloud等)、MyBatis、Netty、RabbitMQ等有深入了解。
(7)熟悉多线程、高并发编程。
(8)具备良好的编码习惯,优秀的文档编写能力。
(9)有一定的源码阅读能力和经验,熟悉JVM。
(10)具备良好的表达和沟通能力,强烈的责任心和团队合作意识,优秀的自学能力、抗压能力,较强的独立意识和解决问题能力。
(1)有大规模高并发开发的经验。
(2)有金融/医疗等具体项目所需的专业领域知识,或相关行业的开发经验。
(3)有多级缓存开发的经验。
(4)有SQL优化等性能调优经验。