这两年陆陆续续写了20来篇和JVM相关的文章,虽然不是很多,但是也得到了一些人的认可,贴上了JVM的标签,还是挺欣慰的,2016年算是和JVM深绑的一年,现在2016年一不留神也快过了,也赶个时髦,来个小结,不过不铺开讲其他的事,就小结下我是如何走上JVM这条路的

Flex的不解之缘

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

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

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

下面是第二个版本

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

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

阴差阳错入了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上能调试起来,因为那个时候还不是很完善,编译要改不少地方,费了好大劲才玩起来。

JVM上路了

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

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

写JVM公众号的初心

我是14年年底加入alijvm团队的,走在JVM这条路上才2年,学到的也还非常有限,写公众号的文章是为了记录我和JVM的这段缘份,说不定哪天我不做JVM了呢,那再接下来谁还知道你曾经和JVM有过这么一段不堪回首的历史呢,因此记录一些东西是好的,好的经验可以帮到更多的人,让更多人少走弯路,快速解决他们的问题。

最后我想说,只要你愿意付出,一切皆有可能,像我这样从前端Flex走到后端Java,再到现在的底层JVM,也许后面还有Kernel,甚至哪天还会去设计芯片,哈哈,有些事不要觉得自己做不到,但是不做肯定是做不到的。

假笨说-我是如何走上JVM这条贼船的相关推荐

  1. 我是如何走上CSDN这条路的

    大家好,我是记得诚. 写文章这么久了,也没有好好介绍自己. 我是90后,2012年上的大学,电子信息工程专业,普通的学校,大一挺勤奋的,高考考的不好,就想着考研弥补一下,所以天天去图书馆看书. 那时候 ...

  2. 我是如何走上前端开发这条路 并常年保持一线竞争力的

    我是怎么走上前端开发这条路? 首先,我是个文科生,大学里只学过vb,觉得计算机编程这东西太玄乎,不是我玩得转的. 后来机缘巧合去做了一家互联网创业公司的HR,阅了上千份程序员的简历,面了上百个不同水平 ...

  3. 蓦然回首,我是如何走上数据库开发这条路的?(二)

    生活哪里是一层一层上台阶或下台阶,生活分明是踩着一块浮冰去另一块浮冰,却永不知岸在何处. by 吕彦妮 蓦然回首,我是如何走上数据库开发这条路的?(一) 走过千山万水只为努力改变自己的命运,却不曾想生 ...

  4. 来北京十年,我为什么走上创业这条不归路

    我是日事清的创始人刘磊,关于为什么要创业,感触颇多!因为2015年9月10号,是我来北京的第10年!也是我创业的第4个年头--但直到今年我做的项目日事清拿到数百万融资后,才觉得创业真的是一件痛苦却又幸 ...

  5. 我是如何走上运维岗位的?

    在专栏介绍中,我简单分享了自己为什么会走上运维这个岗位,一是责任心使然,出现问题时总是会主动冲在前面解决,另一个是在这个过程中技能提升得很快,很有成就感.不过当时受篇幅所限,并没有完整说明,所以今天我 ...

  6. 我是如何走上Java开发这条路的

    文章目录 一 写在前头 二 什么是Java 三 什么是面向对象 四 什么是抽象 五 什么是封装 六 什么是继承 七 什么是多态 七 Java能做什么 八 Java延申的方向 九 Java学习路线 十 ...

  7. 我是如何走上程序员这条道路的

    现实生活中估计有很多人和我有着相同的经历吧,或者也和我一样,面对过同样的选择,如果你是这样的,那么就恭喜你了,也许你能从我这篇文章得到一些启发,然后做出最正确的选择!以前我都不敢说自己是一名程序员,因 ...

  8. 怎么更好的在php上走得更远,我是如何走上PHP开发这条路

    从刚开始接触PHP到现在不知不觉已八年有余,然往事历历在目,最开始为了学习PHP以致在宿舍中通宵看视频的情景恍如昨日,一台电脑.一个耳机.一盏台灯伴我走过了几百个个日日夜夜,回想起来真是"往 ...

  9. 蓦然回首,我是如何走上数据库开发这条路的?(一)

    --我们最终都要远行,最终都要跟稚嫩的自己告别.by 海子 我只是一个普普通通的数据库开发工程师,从象牙塔离开的那一刻起就开始在社会这洪流中艰难前行.如今看着挂在胸前的工牌,思绪万千--这枚小小的工牌 ...

最新文章

  1. 443 ERROR [main] client.ConnectionManager$HConnectionImplementation: Can‘t get connection to ZooKeep
  2. 系统部署常见问题汇总
  3. Java poi插件导出Excel文件合并多sheet页
  4. [SEO]让你的Asp.Net网站自动生成Sitemap——XmlSitemap
  5. 可疑文件_特制的ZIP文件能够绕过电子邮件安全网关
  6. 2018.08.09洛谷P3959 宝藏(随机化贪心)
  7. WPF中自动增加行(动画)的TextBox
  8. Serial Old收集器和Parallel Old收集器
  9. linux ubuntu20.04 problems
  10. java解析未知key json_获取JsonObject某一未知key的值操作
  11. 使用GIT来管理代码的心得
  12. Android开发--内容提供者(Content provider)
  13. bartend无法自动打印的问题
  14. [人工智能-综述-3]:人工智能与硅基生命,人类终将成为造物主
  15. gitlab密码忘了怎么办?
  16. peerDependencies WARNING问题剖析
  17. java画图板之平面山水画(二)
  18. 一键关闭微软自动杀毒软件Windows Defender软件:Defender Control v1.4
  19. 最全微信产品相关文章
  20. Dock 栏美化壁纸,深+浅模式 ! 支持全部机型~,太可爱了!

热门文章

  1. python下载文件的几种常用方法
  2. 《Adobe Flash CS6中文版经典教程》——导读
  3. nginx 同一个IP上配置多个HTTPS主机
  4. C++语言基础 例程 文本文件的读写
  5. 【转】如何一直保持测试工作的热情
  6. hibernate hbm2ddl.auto 问题
  7. 我国手机浏览器用户达2.15亿
  8. Apache源代码全景分析第二卷——HTTP请求处理
  9. 设计模式-行为-迭代器
  10. Kinect学习(五):提取带用户ID的深度数据