211106北京紧急项目

Nov 8, 2021

北京项目紧急上线

21.10月,北京合作甲方想要在12号之前上线,于是分派借调手下两个同学,给已分出去的另一个经理以开发人手。刚开始两位同学在公司内帮助处理,但是很多环境等都得在现场,公司没有氛围和特殊环境等,于是两位同学(前端大四实习,脑子不错;后端是前端转nodes的脑子稍稍不好用的熟悉6个月的新手)刚开始不愿去北京,后面为了项目还是欣然前往。

起初我觉得应该不难,改一改,东西并不多。但是另一个经理想要自己的实现方案;我沟通过,以我的方法继续往下,这样能少走弯路,他没理会,算了,项目给到他,以他的方案决定。但是最后12号到了,再加1周,到了20号了,还是没好,客户那边也是急着。

个人成果

我在10.26号出发,花了9天时间处理完,这里进行一个记录,有意思的经历。

刚开始出发,目标是争取在3天处理完主要功能。之后剩下东西看还差多少,我3天处理完网络拓扑就可以走了,但是毕竟都来了,还是争取把剩下的整完。

项目难度

功能是uni app 做界面端,然后采用安卓离线打包;用户使用第三方jar包在安卓转换登录后,实现用户真实登录。后端是nodejs。用户使用功能都是完成的(Bug不必理会)。

仅仅是以上这样,看起来是极其简单的,然而关键是网络拓扑、和第三方合作、操作开发环境等,并且两个网段还在不同地点,来回都不便!

跟安卓通信的后台(后面称之为”密集网”),甲方爸爸手上拿着安卓,但是无法在电脑端使用浏览器网页登录管理界面处理结果数据。需要由另一个安全的网络后台(后面称之为”安全网”)来提供电脑端浏览后台服务。密集网和安全网之间的通信不是直连,而是由另一个厂商提供转接口(GET/POST接口),同时提供文件摆渡服务(ftp服务,摆渡方案,所以不是及时的,延时有20s之久)。

之前的经理领着同学去的时候,方法全是骚操作: 安卓所有请求(rest api)转为GET+POST,就为了应对中间商的接口。安卓请求完密集网后台,然后相同操作再发送到对接的中间商的请求,请求体还不一样,极为不便。后台之前的rest api接口也是全部改为GET+POST。骚操作啊,很多都不能运行,数据不对,新创建数据库id都不对应等等情况。

10月8号他们三打电话过来说(之前也是一直打电话过来援助,这段时间我也超级忙-全国性比赛软件支持,天天很晚才能回去,家住的还很远,电瓶车40分钟),说10.12号,客户必须能用上。

经理已经领着同学过去两三周,一点进展都没有。刚开始他们过去,住汉庭;现在他们待太久没有进展,舍不得跑去住简约宾馆;好惨。

10.24 我对接完了全国比赛的软件支持,周一开会,还是觉得我过去整好来。整个公司,伟哥他不能去,他更重要;其他组员没找到一个能顶这种玩意,只能我上了。出差肯定累的,但是扔两个同学搞不定回不来更麻烦,算了,出发吧。出发前,代码回退到他们刚碰到代码前的状态(相当于他们一两周干的所有都是错的),服务器调通来(他们10.12号前调了3、4天不能调通的,我电话远程协助30分钟搞完)。

周二上午出发,这周刚好北京出现疫情,我捅鼻子的核酸只能顶2天,当天就去掉1天了。下午聚个会,总结下当前状态,下午我的核酸能用,他们不行,赶紧附近做了。我先上去摸摸东西,包括申请电脑,找对接人,申请开电脑。摸了摸相关网络环境,调了相关请求感受了下。下午晚些喊前端同学上来一起搞搞。大致了解相关东西,今天就这么多了。

当前我们3个人(那个经理刚开始待了3天多就离开了),只有两台电脑,公司没有太多空闲电脑了,反正我待的这一边有电脑,另一个网络配一个电脑。无线网络?没有,都用流量吧。特殊的测试安卓手机?只有一个,在密集网。

环境如: 安全网能看到同步结果,但是遇到问题,只有安卓手机和密集网能检查错误等。我一般待安全网,上去楼上就下不来,非得有人接,所以都不敢乱动。吃午饭都是尽可能搞定去吃。菜菜后端搞不定。太艰难,全靠自己理论基础远程教着操作,否则真的搞不定这次的挑战。环境复杂,开发、测试环境极其苛刻,生存状态极其艰难,aker,你好nan。

开始实施

第二天根据第一天方案,完成了大部分东西,完成了数据同步方案,我给他们安排的任务很简单,就是调通图片上传,他们那能给我用curl把图片列表请求下来,同步curl把图片给下下来,文件同步部分他们先处理,我专门搞我这里的数据同步方案。我的方案初步完成。跟菜菜后端远程合作实在蛋疼,很难沟通,到了那种想喊sb,滚蛋再派一个人过来那种。菜到家了。今天给他们安排的,curl 密集网图片能上传,安全网能下载下来就是完成,今天也算顺利。

第三天,我核酸过了,不能进去,就待在宾馆写,昨天的设想,我也没有完成完全,今天把剩下的bug改好了,同时启动测试都很OK,确实在外,开发进度、思考度会降低。远程对接中,还要教配置文件启动相关,烦,前端脑子灵活,但是不会后端所有概念,菜菜后端教操作太麻烦,都不想花时间教他操作。同时他们俩也是分在两个网络。今天大致印证开发方案正确即可,同时要求他们完成的文件方案完成好来。至少今天让他们把请求接口都写好了,代码请求。今天完成文件请求,至少有进展,我的数据请求缺少配置文件,他们不会改配置文件,哎,菜,脑子不会转,算了,今天到这里了。

第四天 29号,上午他们被喊去公司竞标,留下我一人继续搞搞可能的需求。中午回来的时候,北京技术负责人也来了,我们这三人跑去他这蹭了一顿饭,嘿嘿。下午2点继续开始。今天任务很简单,彻底把数据请求全部弄通。今天我去安全网,两边网络把镜像更新后,开始调试,解决缺少配置文件等。6点前一直测试,各种调试解决问题等。下午6点后,突然就行不通了,各种测试,然后请求第三方帮助。直到晚上才知道,我们做的测试中间服务器是他们的测试机,周五6点下班准时关机,于是我们就不通了,我去,脑裂。

第五天,周六,周末不能休息,赶紧搞好回去,而且周末他们人少,可以快点多搞点。今天我和菜菜后端去安全网,前端同学去密集网。他们外派驻场还挺舒服的,周中上班就是打游戏,没啥事干,周末来了看场就是吃吃饭,还是打游戏。哇,有这时间,我把clang、cpp 都过完了。我咋这么忙哦,我去。算了,加把油,加油落户咯,这个重点加把劲。

周六把昨天不能调通的地方解决掉,两个网把镜像同步后发现基本都OK,数据请求方面算是全部通了。下午让菜菜后端学着写文件请求下载,咪咪摸摸老半天,半个单词写不下来。算了算了,自己搞吧,我都把过程描绘了好几遍,硬是不懂,太鸡儿菜了。我给人描述东西都是极其好理解的,毕竟我的说话、沟通方式等都是不错的,听不懂的,都是脑子不好用的。真的。

周日31号,没想到没办法在11.1号之前完成这个回去。尽可能的了,今天还是要忙东西,今天忙着把图片的方案完成来,完成大部分,还有些bug,算了, 进度算是85%吧。

周一11.1号继续出发,搞定他。周一和周二完成图片方案,而且优化了对接的图片列出、下载方案。周二终于在晚间由我们两个同学测试完成。

周三的时候,上午继续压力测试,有bug继续修改,其中还是会有小问题,产品中展示问题、逻辑bug、对付第三方特殊策略的bug等。下午的时候进入测试环境,基本没太大问题,今晚和前几晚努力一样,多拼命多搞好一些问题,就不会太多后续的了。包括周二、周三发现上线的问题,我们快速去对付。安卓增加包、测试中正常;增加一个我们不需要的服务,然后进行调试通。

说实在这几天也是超级累,等到周四早上,测试都OK,下午三点左右和甲方沟通完毕,甲方还是很满意的。上线的事都差不多,我们在下午4、5点左右集结讨论怎么回去。中间群里说了声再待一天看下,好吧,我留下来半天看下。俩同伴出来太久了,内心是压力超级大的,衣服都没怎么换了。当天都没有交通工具回去了,再睡一晚,周五回去吧。。。