转眼间又到年底了,虽说过了年又老了一岁,心底里还是期盼过年的。一方面可以回家看看爹妈和爷爷奶奶,一年没有回家,还是蛮想念的,希望高铁通了以后可以常回家看看;另外一方面也借年假休息一下,好好总结过去一年的得与失,计划2020,继续前行。

    首先总结一下工作方面,2019年的主要工作是继续开发维护风控系统、开发并完善API网关系统、参与了一个技术工作组项目(各个团队出人力共建)-全链路流量标记透传以及最重要的API网关上云。在各个系统的开发维护过程中还是有不少值得总结的地方。

    风控系统经过2017年和2018年的发展已经比较完善了,不过在规则生成和规则判定方面还有不少值得优化的地方。2019年着重重写了规则生成逻辑和重写了表达式引擎。规则执行更加高效优雅。另外在系统优化之余还加了不少小需求。目前风控系统日渐趋于稳定,需要再单独写一篇文章总结近两年来风控系统的迭代演进以及思考。

    API网关系统大部分功能也已经稳定下来了。2019年上半年参与了一个智能决策平台项目(智能ABT测试系统)的开发,网关侧开发了一个插件实现了主要的实验分流、判定和结果执行逻辑。不过随着决策平台的演进,网关仅仅做了基本的转发功能,大部分功能都没用用到。这块以后项目开发中需要注意,一定要做相对长远一点的规划,分析清楚需求,设计好技术方案。2019年下半年主要完善了网关的监控报警,开发了全链路监控插件,纳入全链路监控体系中。同时发现了Kong的几个比较严重的bug。以后选择开源项目做二次开发的时候要选择已经发布稳定版本的项目同时注意代码质量,

    2019年的7月至10月份参与了全链路流量标记透传项目。该项目属于全链路压测的一部分。项目做的事情是制订流量标记透传的规范,并基于现有的追踪能力(Pinpoint)开发插件和SDK实现流量属性的传递,存储路由可以根据流量属性路由到影子库或者正常库、影子MQ或者正常MQ等。在此项目中做的比较成功的是充分的资料准备、仔细长远的规划和高效的实施。这三点经验需要好好保持下去。

    本年度还有一个比较重要的事情就是应用上云了,云内采用Istio作为ServiceMesh,流量入口采用杭研基于Envoy研发的Gateway。云外的Kong网关不再部署到云内,而是复用现有的管理平台,将配置通过中间的一层转换服务转换为k8s的yaml资源下发到pilot,最后再下发到envoy网关。我们团队和杭州团队对接,基本将云外Kong网关到功能和插件迁移到云内的envoy网关。在此项目中经历了种种困难的地方,比如envoy网关不稳定、转换层不稳定、测试不够充分完善以及基建不完善导致的排查问题的艰难等许多问题。总结下来就是:这种共建的项目还是需要找比较靠谱的合作方、做好需求和项目规划、做好测试、对质量要严格要求。

    生活上最大的事情是买房了,在亲人朋友的帮助下凑够了首付,开启了房奴生活,开启了吃土生活。自己的神州笔记本电脑光荣退休了,花呗分期购入了一台MBP,在这里非常感谢老婆的理解和支持。老婆的会计中级证书也重要考过了一门,开心~。

    絮絮叨叨记录了挺多,2019年满意的是自己的代码能力、眼界有不少提高,拖延症减轻了很多,执行力也有很大的提高,学习上看了几本技术书做了几次小组内分享,这些还需要保持。不足的在于学习上的规划不够明确,总结做的不够多,接下来的一年需要大力改进。