小码农的碎碎念之2016个人技术总结

重金难酬大梦想,寸功不负小码农

题图来自我在四月份借元代吴澄的《勉学吟》组诗中一句,再凑一句,做的一首小(shun)拙(kou)诗(liu)。当时的我正处在一个挺纠结的状态中,聊以此来给自己打气。

转眼又过了大半年,2016年的阳历阴历都已落幕,在新年伊始再回头看看这过去一年,真是特别有感触。因为这一年过得可谓跌宕起伏精彩纷呈,所有努力的、新鲜的、憧憬的、不确定的、甚至是后悔的经历,到最后都归为充实的成长。在这篇文章里我先数一数自己这一年在技术上的些许收获。

年初

PySpark

在2016年开年之时,我在数据组做游戏数据的捞取、计算和存储等工程相关的东西,也做了一两个报表网站的API。其中一个网站的API算是2015年末写的吧,用了一些在当时部门里比较没人试过的东西,比如用OpenResty来异步化DB连接、动态加载DB Model、和SA合作尝试Docker部署之类的(万分感谢SA大大提供的Docker Swarm集群),现在看来挺有过度设计的嫌疑,一些配置也没有达到最佳实践,但是至少那个站在挺少的资源配给下,做到了还算不错的性能。

后来一个同事把这个网站前后端一口气都接走了。老板们安排让我把工作重心完全转到用PySpark来做我们电商平台的数据工程。就是在这段时间,我开始接触Spark上的RDD和Dataframe API。由于Spark的MapReduce编程范式要求,代码里函数化的程度比之前的项目都高不少,尤其用了非常非常多的闭包来传递上下文,也算是比较少有的函数式编程练习机会了。

年中

Pandas

要说用Spark有什么遗憾的话,最大的应该是当时还没来得及用上Luigi或者Airflow之类比较现代的pipeline管理工具,只是初步调研了一圈;另一个是当时一直做着工程上的东西,没有机会接触分析和建模层面,就没有怎么接触到Spark的MLlib API。不过这个也不算太可惜,因为我后来被抓到了一个新部门,重点帮公司的大游戏做营收优化。于是我在Spark集群内网里要到了一台机子,搭了个Jupyter,在上面跑Pandas和Scikit-learn。在这个部门,我需要开始短平快地用脚本从游戏数据生成报表,然后提供给运营组的同事做精确营销之类的准定——需求服务面的专一性和时效性就决定了用Spark取出来的数据量小到一定程度时,就可以尽量用一些抽象程度高的API和类库来节省时间,不需要考虑计算过程的可扩展性。

其实做报表吧,也不全是我工作所有内容,平时还是有一些数据准备工作是比较工程化的。在一些项目里,我们需要直接用Hadoop的接口操作HDFS,于是就用上了Scala——这也算是今年比较独特的技术经验了。关于对Scala的爱恨情仇,在另一篇博客里有比较详细的描述,这里就不展开了。

年末

不忘初心

年末是全年最开心的阶段,开心到我都不知道要配什么图好了……

我被最初招我进公司的老板调回一开始的部门,专心做游戏活动宣传网站及API。在此之前我虽然有很长时间在这个部门里,但主要做的网站比较报表向,以内部使用为主,项目比较注重数据计算流程;现在在这个组里做面向外部玩家和用户的网站,就更加注重网站外观注重服务性能。

我们组里气氛特别自由开放,项目更新周期也短一些,很多想推进的改动都可以去尝试,效果好的话,在新项目里推广开也是很快的事情。我们已经顺利地把很多活动宣传网站放到Docker上了,运维就可以交给SA,不再需要自己去服务器里重启,有性能需求的时候也可以随时横向扩容;本地开发环境的架设用docker-compose以后方便了很多,不再需要用一个专门的开发虚拟机来为项目各种安装依赖包各种改自己本地测试DB连接参数。新的项目到手时候还有一套挺顺手的Cookiecutter模板来生成比较简洁的基本项目结构。这些流程上的改变,希望都能让组里筒子们在开发体验上有所提高吧。

这里插一段题(zhao)外(pin)话(tie):我能知道Cookiecutter这个工具还要感谢我们厂赞助了坡县PyCon 2016,让我能直接围观Python社区里的新鲜玩意。会上有两个Keynote Speakers(Greenfeld夫妇)就是Cookiecutter的作者。如果没有这次PyCon SG的参会经验,我们可能还得自己造轮子来准备模板项目。喜欢在开发社区交流学习的朋友想来我们厂的话,欢迎简信上找我哟。

再回到技术总结,在性能上我们的改进也不少。我们之前在一些WSGI的异步部署配置上没有做到很好的实践。在跟其他部门的前辈们学习之后,我把他们的一些经验借鉴到我们组的项目中,性能提升挺明显的。在此也要感谢一下我们厂能从国内一线大厂挖来这么多大牛,让我这在坡县成长的小码农也能偷师一发。

还有一个我们性能相关的调整在于对Nginx的调研。我们在推广了前后端分离的网站架构之后,对API的性能就可以有更好的细粒度控制——有一些报文很长而更新时效不敏感的API,就可以提到Nginx的缓存里。这样的调整对单API的吞吐量提升非常明显,明显到这些API对服务器的压力简直都可以忽略不计。

其实我们的调研不止于Nginx的核心功能,还用上了OpenResty——在我用OpenResty写完一个性能要求比较高的API做尝试之后,陆续又有两个同事用上了OpenResty。目前服务跑得挺稳定的,用了OpenResty的同事反馈也不错。之后我们可能还会继续用OpenResty给我们的内部API做统一网关什么的,都已经写进2017的愿望列表里啦。

最后提一下我在2016农历年末的一个尝试,两年以来一直很想通过Vue来学习前端姿势的我,终于下决心用Vue来写一个比较复杂的游戏活动站。一开始还只用了vue-cli默认的Webpack项目模板,到现在已经用上Vue + vuex + vue-router的全家桶了。不过由于手生,开发过程中有一些小的磕磕碰碰,但是现在还不至于影响业务设计——希望自己的前端能力可以赶快成长起来 :)


不知不觉已经嘚吧嘚吧写了这么一大串乱七八糟的流水账,who cares 反正也没什么人会看。

2017,继续加油吧!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容