时光飞逝,年初从家里出门的情形恍若昨日。2020是不平凡的一年,疫情从年初笼罩到年尾,上海的冬天也是打破了历史同期最冷的记录。眼看春节将至,是时候回顾总结下2020了。
回顾年初立下的flag
19年的规划里,2020需要完成三件事儿:
- 1、平滑升级自维护dubbo版本和官方最新版本同步
- 2、区块链落地,实现业务轻松上链
- 3、中台探索建设
第一件事儿,平滑升级dubbo版本这件事,实施的时候比我当时设想的要简单的多,我们在两个多月的时间里,完成了两套方案设计,测试,打补丁包,注册中心切换,线上落地,流量平滑切换过度整个事情,原计划自己实现双读双写注册逻辑实现,没想到dubbo已经提供了类似的底层设计。而且不停服完成了注册中心从redis迁移到nacos上。虽然过程中遇到了一些因为版本升级导致的场景bug,也通过补丁包的形式完美的过度解决了(后期的官方包已修复)。。第二件事儿,区块链这件事情最后落地了,也实现了业务轻松上链,但是不是我们自建设的区块链服务,最后采用了蚂蚁的区块链服务。我们的研究力度和深度,虽然达到应用落地的程度了(我们主要研究和实施了java实现的开源区块链项目JDchain,给项目提过pr和issue,到目前为止,还是这个项目外部贡献值的no1。也输出过一些内容,但是最后考虑到后期的运维成本以及人力投入,采用了商业的区块链,虽然非常可惜,自己的很多研究成果没有落地,但确实是当时场景下的非常正确的做法。第三件事儿,其实我一直的态度都是不怎么赞成做所谓的中台服务的,原因有很多,暂且不表。当然,最后也确实两次启动会,两次都不了了之了,这个我自己需要检讨,虽然主负责人不是我,但是为啥没有坚持内心的想法,为啥没有及时干预。
除了规划的这些事儿,2020还做了数据脱敏的方案,因为数据脱敏涉及到多数据源,又做了完整的JPA环境下多数据源分布式事务方案。其他的事情就是,认识、接触到了java云原生技术框架quarkus。以及graalvm技术。并完成了内部三个边缘项目的quarkus改造,采用graalvm编译成了本地镜像,启动速度只需要0.07s,内存只需要200M。并用quarkus开发了对接第三方的应用的标准quarkus项目,原计划将这些技术全面推广落地的,但是后面因为自个的原因,最终没有全面落地,是个遗憾。
Java 云原生
云原生这个词儿,不知道从什么时候开始就火起来了,我现在都不能非常精准的阐述云原生到底是个啥东东。我初浅的认识里,云原生是对容器时代应用的一些规范要求,
比如,启动速度够快,资源占用少就是其中的标准。在java的生态,涌现出了graalvm 这种技术(将 java 提前AOT编译成本地机器码),以及quarkus、Helidon这些适配graalvm的框架,spring5.x也在努力适配graalvm中,不过spring的历史包袱大,完整适配生产可用状态估计没那么快。有了这些技术加持,java应用也能0.007s就能启动了(官方数据),并且启动后,立马就是可用状态。想象下,面对突发的流量请求,目前的技术能力,弹性扩容能够达到啥状态,有了这种技术又是啥状态。我们上线的应用达不到0.007s的启动速度,但是也有0.07s的启动速度,1s内扩缩容100个实例没点问题。
2020年,有幸接触到了quarkus并做了一些研究,在个人博客创建了quarkus专栏,已经累计了24篇和quarkus 、graalvm相关的内容,后续会继续努力输出,欢迎关注。创建的quarkus技术交流群汇聚了很多对quarkus和graalvm技术感兴趣的朋友。开源了quarkus集成国内热门的中间件组件,如:quarkus-apollo、quarkus-dubbo、quarkus-nacos等,这些项目已经有了用户使用咨询的声音,这令我感到非常开心,说明已经有人开始关注这个领域了。在国外、以及Github开源社区里,quarkus的热度都是非常高的,今年,国内的quarkus技术相关内容也开始慢慢的多起来了,从我博客内容浏览记录情况就能窥出一二。欢迎感兴趣的朋友一起来学习啊(趟坑)
开源那些事儿
首先对关注kk开源的朋友说声抱歉,2019年吹的牛逼,开源内部的【短信平台项目】、【邮件平台项目】、【授权认证平台】,最后因为我的离开没开源出来。不过这件事儿我记着,会找机会和前领导沟通沟通这件事儿的可能性的。虽然之前计划的项目没开源,但是quarkus技术相关的组件项目,总共开源了五个。这些项目无论是用在quarkus项目上,还是学习Quarkus框架扩展技术,都提供了非常好的案例。其次是我们的主打项目kkFileView,今年发了两个大版本更新迭代,几次小版本更新,目前已更新到v3.x版本,架构设计、代码结构等都做了大量的重构,功能也较去年做了很多的增强,包括UI体验方面。kkFileView项目目前在gitee平台上面累计获得7400+的 star。在github平台上累计了4600+的 star。2000人的QQ用户群删了又满几次了,终于还是付费创建了kk开源技术交流2群。今年做开源,还有一个惊喜就是,很多人愿意付费加入我们技术社区交流问题,学习技术,这是对我们开源技术、开源项目的极大认可。应社区用户的需求,明年,针对kkFileView的分布式部署特性以及性能方面,会做针对性的功能迭代,关注kkFileView的朋友敬请期待吧,这算立给2021的一个flag。kk一直在认真做开源,除了kkFileView项目,klock,kkbinlog等项目也一直在迭代维护。今年,我们获得了gitee开源社区评选的最佳开源组织,这是对我们做开源的最大的认可。感谢gitee开源平台,感谢那些相信我们使用我们开源项目的朋友们,有你们的支持,我们的开源之路会越走越好。
新工作新挑战
是的,在接近年终快发年终奖的时间里,我闪辞了。可能很多人都有疑问,为什么不等拿完年终奖在走,为什么在凯京待了四年,做了这么多成绩却选择离开重新开始。这里面有非常多的个人考量,因为涉及到公司的一些信息所以不便说明。可以说明的一点是,我看中了心动TapTap的流量。在凯京虽然从事架构中间件的工作,但是因为业务偏toB的,一直以来中间件做的非常轻松顺利,技术也进入了一个内卷的状态。TapTap的流量能带来新的刺激和更多的挑战。心动和凯京都是非常优秀的公司。加入心动,和当初加入凯京一样,有非常多的机缘巧合,这里就不一一说了。新工作已两个月,已适应了这种开发节奏,希望自己在新的岗位上有新的成就,突破自己迎接新的挑战。还有希望可以推动一些项目的开源
坚持是个好品质
坚持是个好品质,除了坚持参与开源、热衷技术外,其他的都做的挺烂的,跑步健身没坚持、英语太烂了,学英语也没坚持,看样子这个事情往后也得继续随缘了