阿里云运维架构实践秘籍
上QQ阅读APP看书,第一时间看更新

3.1 “宇宙最火”的语言

其实在早些年,计算机刚进入中国时,互联网主要是以新浪、搜狐和网易为主的门户网站。那时候在国内从事计算机行业的一批人,其实都是“高材生”。我记得那时候监控工程师基本都是研究生学历。但随着互联网的普及和发展,计算机岗位需求量呈爆发式增长,从事IT相关行业的门槛越来越低,加上IT岗位的人才需求量巨大,且IT岗位有稳定的收入来源,不少人都去参加IT相关培训,然后进入计算机领域。

Java语言算是较早的编程语言,经过多年的发展,其在C/S领域和B/S领域都占有一席之地。因为其语言的特性,适合做大型Web类系统,特别是在银行、金融、电商等行业领域应用广泛。Java语言一直在编程语言排行榜上独领风骚,但随着社会需求的变化和其他语言的专注,Java的市场正在被一点点侵蚀。Web网站领域几乎被PHP一统天下,C/S、嵌入式领域几乎被C/C++垄断。要不是安卓的出现,Java的命运还真不容乐观。但不管如何,如今Java依然是全“宇宙最火”的语言。

我当初选择学Java时,对这门语言还没有清晰的认知,仅仅只是觉得Java难学,有挑战性,就想尝试,所以就选择从事Java开发。随着技术的不断发展,也证明了我的选择是正确的。一方面,Java作为应用场景非常多的一门后端语言,在Linux开源技术方面非常火热,这能让其接触到最前沿的分布式架构技术。比如,Android刚出来的时候特别火热,只要会一点Android知识,即使没什么经验的人,月工资也能达到七八千元。这对刚毕业做开发的人来说,其实诱惑力是非常大的。不过,我还是坚持做Java后端开发,其实原因也很简单,我觉得Android是前端App开发技术,这对我本身的技术成长没有多大帮助,加上我的兴趣点也不在前端。在技术领域,我更想要做的是分布式集群架构,这也是很多前端工程师一直想要转后端的最主要的原因。另一方面,Java作为一种纯面向对象的高级语言,掌握着Java核心编程理念,后续若想转至PHP等其他编程语言,也是一件非常容易的事情。但PHP用户想往Java开发方向转型,不是那么容易的一件事。

在云端实践中,几乎80%的Java应用都跑在Tomcat中。我们在云端很少看见Jboss、Weblogic等重量级中间件(相比于Weblogic,在云端还能偶尔看到有用户用Jboss部署相关业务),因为这些重量级中间件对服务器的性能要求较高,所以一般适用于传统IOE那套老架构。而云的优势在于分布式,所以在一台4核8GB的ECS上面跑一台轻量级的Tomcat,效果十分完美。另外,结合当前最热门的微服务架构,Spring Cloud是一套完整的微服务解决方案。在云端结合Docker的实践,也是当前在云时代最流行、最火热的做法。