新闻中心
5个月,白加黑,排队网零售SaaS重构中的笑与泪
事情是这样的:
老板说
零售业务起飞,系统得赶紧升级啊
▼
渠道说
升级系统?好啊!可千万可别停机啊!这单没法签啊!
▼
研发说
那个啥...咱们现在的系统既要升级又要不停机...
臣妾做不到啊
要不就。。就直接重构了吧!
说干就干,于是乎,程序猿、产品汪开启5个月5+2,白加黑战斗状态,累了就在行军床上小憩一会儿,困了就来杯咖啡提神,呕心沥血码代码,只为最终的产品蝶变。
“从压测表现来看,它可以再支撑业务翻倍的数据量,也就是说如果没有啥变化,它可以继续稳定运行着。但从这套零售系统发布到现在,说实话渠道合作伙伴铺设的速度超出我们的预期,一年跑出餐饮系统三年的成绩”,在近期聊起排队网零售SaaS重构时,项目经理有些凡尔赛的笑着说道。
2020年末,零售SaaS一经推出,以其丰富的功能,简单轻便的人性化交互,稳定的服务器性能,受到了渠道合作伙伴的一致认可,截止目前,商户数量已破万家,覆盖商超、便利店、水果生鲜、零食等零售业态。
为了满足业务量爆炸性增长,保证系统的高稳定、高性能、可拓展性,以及对未来AI、大数据大规模应用的前瞻性考量,开发团队耗费5个月时间,投入80%骨干,基于10年的SaaS系统的开发经验,对原有系统从底层进行了全新的优化升级。
“刚开始立项的时候,有开发同事说我们这是开着飞机换引擎,因为留给我们上线的时间窗口很小,但整体的业务要求却异常高。
春节前这段时间是线下商超置办年货黄金时间点,这是摆在那里的一个硬性指标,我们必须要在此前完成。”项目经理在介绍项目背景时讲到。
互联网产品来说,前台越简单,后台就越复杂。最典型的莫过于谷歌,界面只有一个搜索框,简单到不能再简单,但几乎没人否认谷歌的技术实力。
收银SaaS同样如此,收银员在POS机上的一个简单的扫码动作,背后是复杂的业务逻辑和数据处理逻辑,还涉及到服务器资源调用的效率,同时,正在“施工”的模块不能干扰到商户的日常业务。
这一次重构的目的之一是提升数据处理效率,在高并发情景下,最大限度地利用服务器的处理能力,保证服务器的稳定性,提升用户体验。
按照计划,项目组根据业务模块分成多个小分队火速推进,每个小分队都专注做好一个模块,整个庞大的系统一直可以灵活组合演进,实践层面做了很多隔离、协同的优化工作,也将不同等级的任务调度做得更精细化。解决了行业内传统软件常会遇到的“烟囱式”IT架构问题。
将测试融入在每一次重构中,小步快跑,修改一块代码便自测这块,等调通后再继续往下走,开发测试两手抓,最大程度降低重构的风险。
“在测试中,把历史上真实生产的一些需求、请求,在测试环境去做回放,从而验证经过新一轮的修改或者新的功能后系统是否能跑通,最后才稳定上线。”测试工程师说道。“我们最后上线的过程中,出现的问题都能够做到日清日结,保证整个系统重构的交付可以符合要求。”
系统终于在一月初上线,当晚项目组通宵不眠,一鼓作气,决战天明,项目各方人员坐无缺席,互相配合交流,加快了整体推进进度。迁移当天增量数据、服务上线、回归验证、强制升级,凌晨四点,项目组在公司吃着烧烤监测系统状态。
半夜小憩用的行军床
天亮了,超市便利店迎来早高峰。
“千万别崩,千万别崩...”心中有些忐忑,手中不停的发布新功能,修复小BUG,多小组联调优化系统,一天,两天...一周,连续几周的晚高峰期系统负载都顺利运行,遇到问题开发人员几分钟就能立马修复,实现秒发布,这也能体现出重构过后,新系统的稳定性和易维护性。
在采访过程中小排还整理了一些重点重构成果。
重构前DB
重构后DB
重构前Web
重构后Web
我们深知收银系统运行效率的提升能帮助商户在高峰期解决了用户排队时间过长的无奈,为商户节省了宝贵的时间成本。当重构后的系统顺利上线时,这一切的付出都是值得的!
总而言之,这次零售SaaS重构统的决策,是基于业务快速演进的需要,也是希望在业务跨入新阶段的同时有一个全局资源规划,给服务商、商户带去更优体验!
你可以永远相信排队网!强大的技术实力和执行力是排队网核心竞争力的重要组成部分,最后,让我们给零售SaaS团队的童鞋送上热烈的掌声!