首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我是如何走上JVM这条贼船的?

我是如何走上JVM这条贼船的?

作者头像
养码场
发布2018-08-13 17:44:26
8260
发布2018-08-13 17:44:26
举报
文章被收录于专栏:养码场养码场养码场

寒泉子:阿里jvm专家,主要围绕jvm发表系列文章,现有个人微信公众号:“你假笨”(ID:lovestblog)

寒泉子一直深耕于JVM,近两年陆陆续续写了30来篇与之相关的文章。虽说不是很多(他自己说的),但寒泉子的文章也得到了一些人的认可,贴上了JVM的标签。

不妨在2017年第一季度即将结束的最后一天,来看看寒泉子是如何走上JVM这条路的,也希望能给你一些一路向前的勇气。

以下是寒泉子的讲述。

-01-

Flex的不解之缘

从本科开始说起,大学期间虽然Java和C也有课程教过,但是基本用得不是很多,也不是很熟,何况对于我这种逃课特别严重的人呢(大一下学期开始就很少去上课了)。

07年那会Flex开始流行起来了,不过还不是很广,从市面上的书就可以知道,书店里Flex的书特别少,过了一两年才慢慢多起来,我应该算挺早玩Flex的人吧。

我特别喜欢Flex那种所见即所得的感觉,想做成什么东西很快就能做起来,大学那会靠它还赚了不少钱。大三的时候还完全自研了一个Flex博客,记得有一晚上和我一大学哥们聊我这博客设计、创意、问题及解决思路等不知疲倦地聊了一个晚上都没聊完,人家都打哈欠了。自己开发设计的感觉实在太爽了,可以给大家看看之前的博客样子,也许曾经玩过Flex的哥们还去我博客上玩过,当时还实现了两个版本,可以无缝切换。

下面是第二个版本

不过那会没有R大那样的觉悟来玩虚拟机,那个时候讲真都不知道虚拟机是啥玩意,早知今日,或许那个时候就研究actionscript虚拟机了,也不至于现在和R大差那么大一截。

不过现在也特别怀恋那种感觉,其实我非常羡慕前端er们,他们应该特别有成就感吧。

-02-

阴差阳错入了JAVA岗

虽说09年开始找工作的时候都是找Flash相关的岗位,也拿到了迅雷等公司的Flash工程师岗,但是最终还是来到了支付宝(那会支付宝还没啥名气,从没在淘宝上买过东西),从事生疏的Java岗。还挺感谢当时的面试官们,没Java经验还觉得我还可行,算是我的伯乐啦,否则按照Flash现在这个发展,估计我早就转行了,也许我现在应该在做游戏。

来了支付宝从事的还是要求挺高的基础技术的工作,做框架开发,这个框架在支付宝的开发肯定都非常熟了,因为几乎所有的应用都是基于这个框架来玩的。

刚开始的时候因为Java基础很差,为了能胜任工作所以我经常加班很晚,天天debug看代码,一般是晚上十一点多才回去的,整层楼就我一个人了,一年之后我对这块算很熟了,还给新来的应届生上框架的课了。

这个一做就做了三四年,这三四年虽然辛苦,但是挺值得的,因为收获挺多。从Java门外汉到慢慢熟悉Java,精通Java,从框架本身再到周边的技术,包括Jboss,Tomcat,Jetty,Maven,Mina,Httpd等都比较熟了,不过这些周边技术都是问题驱动的,碰到问题再深入进去排查,排查多了就慢慢熟了,记得一年下来旺旺加我好友的人数就一千多了,慢慢地变成了查问题的老司机了。

记得11年那会支付宝出了一个内存泄漏的相当严重的问题,当时鲁肃还特地请毕玄大师过来解决,后面毕大师还给我们分享了JVM相关的东西,不过那会我真是听不懂啊,就觉得毕大师好牛逼,真羡慕。

大概到了13年底,那会因为公司高速发展,碰到的问题也越来越底层,JVM的问题也比较突出了,加之我们框架做升级,完全基于OSGI来做,所以碰到类加载的问题也非常明显,而我们都不是很了解其中的机制啊,碰到LinkedError等问题非常懊恼,但是这类问题特别的多,于是迫使我慢慢深入到了JVM里,第一次下载openjdk的代码,费了好大劲在mac上能调试起来,因为那个时候还不是很完善,编译要改不少地方,费了好大劲才玩起来。

-03-

JVM上路了

当时虽然Java熟了,但是C和C++不熟啊,而hotspot都是c/c++写的,这下麻烦也挺大的,又是一个全新的领域,就这样利用空余时间摸爬打滚了大半年,回到家一有时间,一有心情就看代码,调试代码,经常一调就到了凌晨两三点,有时候特别懊恼,因为有些东西实在想不通,解释不了,碰到问题玩不下去了,但是有时候又特别兴奋,就跟玩游戏一样,过了一个又一个关卡,我经常会自言自语,“噢,终于明白了,原来是这样,那那啥啥啥又是怎样的呢”,就这样不断地反问自己一些问题,把整个知识脉络给理清楚来。

那个时候最痛苦的莫过于碰到问题都不知道找谁问,因为身边没有一个懂这块的人,只能自己去探索。那个经历只有自己经历过才知道有多痛苦,经常好几个问题拿起来又放下,拿起来又放下,但是最终发现还是得靠自己才能迈过去。所以,感谢那些苦不堪言的经历吧,因为它们你才会变得更强。

最后我想说,只要你愿意付出一切皆有可能,像我这样从前端Flex走到后端Java,再到现在的底层JVM,也许后面还有Kernel,设置哪天还会去设计芯片。

哈哈,有些事不要觉得自己做不到,但是不做肯定是做不到的。

♬♬♬♬

寒泉子是“养码场”邀稿第二人

之后陆陆续续还会有更多的养码人自己写的文章

出现在这个为你们开设的平台上

诚邀大家投稿

任何关于技术干货,职场成长,心路历程的文章

都可

投递邮箱:monicama@zfsc.com

希望大家今日早点下班~

明日愚人节“快乐”!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-03-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 养码场 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档