第187章 技术整合的挑战(1/2)
车子在小区门口停下。
陈默付钱下车。夜风带着凉意,钻进衬衫领口。他紧了紧衣襟,走进楼道。
感应灯一层层亮起,又在他身后熄灭。
开门进屋。玄关堆着几个快递箱,还没拆。他跨过去,把背包扔在沙发上。
厨房水龙头有点漏水,滴答声在寂静里格外清晰。
他接了一杯水,靠在流理台边慢慢喝。玻璃杯壁冰凉,掌心却能感觉到水的一丝温。
手机又震了。他掏出来看。
是张伟发来的消息。“陈哥,华科那边的开发文档发过来了。有点……乱。”
陈默回了个“明天看”。
他放下杯子,走进卧室。窗帘没拉严,外面路灯的光漏进来一道。
他躺下。床垫有点硬,翻身时弹簧嘎吱响。
闭上眼,脑子里还是茶室里的对话。周总推过来的手机,文件袋的重量,那句“私人帮忙”。
三天。
他数着时间,慢慢睡着了。
早晨是被闹钟吵醒的。
陈默坐起来。窗外天色灰白,云层很厚,像要下雨。
他冲了个澡。热水打在背上,皮肤微微发红。
换衣服时,他瞥见沙发上的文件袋。牛皮纸在晨光里泛着哑光。
他没动,直接出了门。
到公司时还早。走廊里空荡荡的,保洁阿姨在拖地,拖把划过瓷砖发出滋啦声。
陈默打开办公室的门。空气里有股隔夜的灰尘味。
他开窗。风涌进来,吹起桌上的几张废纸。
沈清澜九点到的。她今天穿了件浅蓝色的衬衫,袖子挽到手肘。
“早。”她放下包,“昨晚睡得好吗?”
“还行。”陈默说。
沈清澜看了他一眼。“黑眼圈很重。”
陈默没接话。他打开电脑,登录邮箱。
收件箱里有十几封新邮件。最上面那封标题是“华科智能-技术平台接入指南及API文档_V2.3”。
发件人是王经理,华科的技术对接负责人。
陈默点开。邮件正文很短,就两行字。“陈总您好,附件是我方技术平台的相关材料,请查收。后续接口调试可随时联系。”
附件很大,三百多兆。
下载进度条缓慢爬行。百分之十,百分之二十。
张伟推门进来。他手里端着杯咖啡,杯口冒着热气。
“陈哥,邮件收到了吧?”他凑到屏幕前,“我昨晚看了个大概,头都大了。”
“怎么说?”陈默问。
“文档乱。”张伟喝了口咖啡,“标准不统一,有的接口用REST,有的还用SOAP。认证方式就有三种,OAuth、APIKey、还有他们自己搞的一套令牌。”
沈清澜走过来。“版本呢?”
“更乱。”张伟放下杯子,“有的服务还在用三年前的旧版,有的已经升到最新了。兼容性说明写得跟没写一样。”
进度条走到百分之百。陈默点开压缩包。
里面密密麻麻几十个文件夹。命名规则都不一样,有的按功能分,有的按部门分,有的干脆就是日期。
他点开一个叫“核心服务”的文件夹。里面又有七八个子目录。
“这得整理到什么时候。”张伟嘟囔。
沈清澜拉了把椅子坐下。她点开另一个文件夹,里面是PDF格式的接口说明。
页面排版很挤,小字密密麻麻。配图分辨率低,电路图糊成一团。
“华科内部的技术债。”她轻声说,“大公司通病。”
陈默滚动鼠标。他找到一个叫“数据推送服务”的文档。
描述里写的是实时流式传输,但技术方案用的是轮询,每五秒请求一次。
“这算哪门子实时。”张伟指着屏幕。
窗外响起雷声。闷闷的,像远处在敲鼓。
雨点开始落下。先是稀疏的几滴,打在窗玻璃上啪啪响。很快密集起来,连成一片水帘。
办公室里的光线暗了。
陈默打开灯。日光灯管闪了两下,稳定下来。
“十点有会。”沈清澜看了眼手表,“和华科技术团队的第一次对接会。”
张伟叹了口气。“我已经开始头疼了。”
九点五十,他们走进会议室。
投影仪已经开了,白屏上投着公司的Logo。空调开得有点冷,沈清澜搓了搓手臂。
陈默连接笔记本电脑。桌面投影上去,是那份乱糟糟的文档目录。
十点整,视频会议系统自动接通。
屏幕上出现五个小窗口。最中间是个戴黑框眼镜的中年男人,脸有点圆,头发稀疏。
“陈总好,沈总好。”他开口,声音透过音箱传出来,带着点电流杂音,“我是华科智能技术平台部的王振,负责这次对接。”
陈默点头。“王经理好。”
另外四个窗口里是年轻些的技术人员。两个在低头看东西,一个在喝水,还有一个对着摄像头笑了笑。
“那我们直接开始。”王经理推了推眼镜,“首先介绍一下我们这边的技术架构……”
他共享了屏幕。是一张极其复杂的系统架构图。
方框套着方框,线条交错,颜色有七八种。右下角的小字标注着版本:“2020年Q3版”。
沈清澜微微皱眉。
“这是我们平台的核心服务层。”王经理用鼠标画着圈,“这边是数据层,这边是业务逻辑层,这边是接口网关……”
他讲了五分钟。张伟在笔记本上记了几笔,又划掉了。
“王经理。”陈默打断,“能具体说说我们这边需要对接哪些接口吗?”
王经理顿了顿。“哦,好的。”
他切到另一张图。这张更乱,像是各种服务拼凑起来的。
“根据合作框架,你们需要调用我们的用户鉴权服务、设备管理服务、数据上报服务……”他念了一长串名字,“具体接口文档都在邮件附件里。”
沈清澜开口。“文档里有些接口的技术方案比较旧。比如数据推送服务,还用轮询方式,这和我们这边的实时处理需求不太匹配。”
屏幕里,王经理的表情僵了一下。
“这个……确实是历史遗留问题。”他语气变得谨慎,“那个服务上线早,当时技术选型考虑的是稳定性。要改造的话,牵扯的模块比较多。”
“不能单独升级吗?”张伟问。
“牵一发动全身。”王经理摇头,“我们这边系统耦合度比较高。改一个接口,可能得测几十个关联服务。”
会议室里安静了几秒。只有音箱里传出的细微电流声。
窗外的雨下得更大了。雨水冲刷玻璃,发出持续的哗啦声。
“那实时性怎么保证?”沈清澜问。
“可以在你们这边做一层缓存。”王经理说,“轮询到的数据先存本地,再按你们的时间粒度处理。”
陈默手指在桌面上轻轻敲了敲。
“延迟会很大。”他说。
“理论上五秒。”王经理说,“实际上……可能十秒左右。系统负载高的时候会更长。”
张伟往后一靠,椅子发出吱呀声。
“还有其他方案吗?”陈默问。
王经理犹豫了一下。“有个实验性的新接口,用WebSocket做的真实时推送。但……还不稳定,文档也没写全,我不建议用。”
“有文档吗?”沈清澜问。
“我找找。”王经理切换窗口。鼠标光标在屏幕上乱晃,点开一个个文件夹。
找了大概两分钟。他停下来,擦了擦额角。
“可能……还没对外发布。”他说,“我回头让同事整理一下,发给你们。”
陈默和沈清澜对视了一眼。
“好。”陈默说,“那我们先按轮询方案做评估。”
“行。”王经理明显松了口气,“那接下来讲认证部分。我们这边主要用OAuth2.0,但有些老服务还只能用APIKey……”
会议又开了四十分钟。
王经理讲了认证流程、权限体系、错误码规范。每讲一个部分,都会补充几句“这里有个特殊情况”或者“那个服务比较特殊”。
张伟记了满满三页纸。字迹越来越潦草。
最后王经理说:“大概就是这样。具体实施中遇到问题,可以随时在群里问。”
“谢谢。”陈默说。
视频断开。屏幕黑掉,映出会议室里三个人的脸。
张伟把笔一扔。“这怎么弄?全是坑。”
沈清澜盯着白板。上面写着她刚才记的几个关键词:标准不一,流程繁琐,文档缺失。
“大公司的技术整合都这样。”她说,“得慢慢磨。”
陈默站起来。他走到白板前,拿起记号笔。
“先理优先级。”他在“标准不一”
“认证吧。”张伟说,“三种方式,我们得写三套适配代码。”
“还有数据延迟。”沈清澜说,“十秒的延迟,我们的实时分析就成批处理了。”
陈默在另一侧写下“实时性”。笔尖压在白板上,发出细微的摩擦声。
“新接口。”他说,“让华科把那个WebSocket接口的文档尽快给出来。”
“他们不是说还不稳定吗?”张伟问。
“总比轮询好。”陈默放下笔,“不稳定我们可以参与调试。但轮询这个方案,上限就在那里,改不了。”
本章未完,点击下一页继续阅读。