OZON Inside:感觉像一家初创企业

Ozon.ru与Runet几乎相同,我们20岁的年龄比许多客户大。 从在线书店开始,该公司发展成为一个电子商务平台,该平台集成了履行中心和物流,Web和移动应用程序的基础架构,可以抵御销售过程中数千万用户的攻击和在线骗子的攻击。



在这篇文章中,我们将向您介绍一些关于我们自己的信息:我们如何在每天为120万用户提供服务的同时重建和开发该平台。 同时,我们将展示OZON IT实验室正在工作的办公室,从窗口可以看到几个优美的景色。



在过去的一年中,公司的技术部门增长了八倍-现在我们有600多人。 7月,OZON迁至新总部-它位于莫斯科市的一幢塔楼中。 我们已经占据了八层楼(当您阅读本文时,我们将占据第九层)。





堆叠更换


公司存在的时间越长,客户越多,IT系统的动物园就越多样化,维护和开发它们的难度就越大。 多年来,OZON已建立了最好的物流和物流工厂管理系统之一,而电子商务平台仍然保留了庞大的MS SQL,并在数据库中存储了过程和逻辑。

IIS使用封闭的Microsoft Windows堆栈很难,因为这些技术在入门时相对便宜,但是在某些时候它们的支持成本变得难以承受。



除了MS堆栈,IT团队还继承了将近20年前用Delphi编写的许多系统-仅由于它们不符合现代现实的要求而需要对其进行重写。

结果,大约一年前,OZON开始了IT的全球重组。 我们开始积极聘请开发人员,改用开源和微服务。

主要任务是削减数据库中的逻辑以使其具有可伸缩性。 这项工作的一部分已经完成-有了这个,OZON可以每年增长80-90%。



现在许多系统都用GO编写-这是性能,开发复杂性和开发速度之间的合理折衷。 该语言足够低,无法编写生产性服务,同时又足够简单-可以快速教授。 在莫斯科(和俄罗斯),我们不需要如此多的GO-shnikov,因此我们聘请愿意学习新堆栈并进行教学的专家。 这种方法的工作原理是双赢-专家获取知识,我们最终可以放弃专有解决方案,而用我们自己的解决方案代替。 此外,对于他们的任务,团队很可能会编写出比市场上的解决方案更优化的解决方案。

相处




我们已经在上面提到了新的办公室,现在我们正在逐步适应:设计师在墙上粉刷墙壁,开发人员拿出陈旧的磁铁吸尘器,并将踏板车和百事可乐罐系列带到工作中。



我们没有复杂的层次结构和从属关系-CEO也没有办公室。 您可以通过电子邮件给他写信-并在同一天或在Slack中得到答复-在那里他几乎一直都在工作。

这种方法使您可以在小型团队中快速解决问题。 每个团队的主要项目指标均通过Grafana实时显示在屏幕上。



在CTO anatolix机柜的屏幕上, 有数十个此类图表。 例如,可以看到仓库中尚未收集到数万个包裹。 这很正常-我们每天交付超过100,000个订单,并提供数万个包裹-这是积压的工作,而不是一次转移。 但是,如果积压超过一天-这是一个问题。 借助这些图表,可以立即清楚地确定问题是否正在“累积”,以及在哪个系统中出了问题。



在销售期间,OZON的可持续性测试每年通过几次。 因此,在11月的黑色星期五,订单数量增加了2.5倍-当时该记录是该服务存在的全部记录,但12月的销售量打破了这一记录。

在履行和物流系统中,将货物打包包装并进行分类和收集-他们看不到用户的复杂IT以及严重的负载。 而且,它也可能在高峰负荷时淹没。



同时,产品数量在增加,搜索算法(最近我们移至Elasticsearch)和建议(现在基于机器学习)正在发生变化,新功能正在出现。 在过去的六个月中,我们几乎完全重写了该网站(从ASP.NET Web窗体到node.JS),更新了移动应用程序,现在正致力于减少技术负担。



IT当前正经历爆炸性增长-我们拥有OZON从未见过的人员和技术。 我们尝试了很多,如果无法解决问题,我们将拒绝并采取其他解决方案。 因此,我们建立了一个Kubernetes集群,并且像在任何多维数据集集群中一样,那里存在流量路由-我们决定使用流行的Linkerd,例如Twitter使用的Linkerd。 但是他经常遇到问题:他要么摔倒,要么吃光所有CPU,或者表现不当。 我们花了很多时间进行审查,尝试修补某些问题-然后将其扔掉,使其在Ingress和nginx上变得更容易。

我们正在积极开发数据工程-大量的技术。 我们尝试使用不同的数据存储,算法以及机器学习中的所有技术。



我们一直在做正确的事的愿望和业务增长的步伐之间。 团队没有六个月的时间来考虑最佳解决方案,因为要保持在原位,您需要非常非常快地运行。 我们以以下模式工作:功能-功能-功能-确保稳定性。



在新的一年中,OZON计划将某些类别的销售额增加10倍,并将实现工厂的面积增加2.5倍,启动新的方向并开发新的方向。
1998年,我们是一家在线书店,然后添加了添加,添加和添加类别,并成为了在线大卖场。 但是今天,我们已经远远超过了它。 OZON已成为一个电子商务平台,不仅在其中开发产品类别和支持的物流基础设施,还在其中开发金融服务和大约20个新项目。

例如,在2018年,我们以beta模式启动了一个市场-尽管在测试过程中它已经有数百个卖家。

该特定项目框架中的下一个任务是通过为卖方提供展示,实现和物流,分析以及供应链监控工具来创建生态系统。 理想情况下,在市场上,合作伙伴将可以使用OZON商务团队拥有的所有工具,甚至更多。

通常,我们的IT部门有很多工作要做。 虽然我们也喜欢放松。 顺便说一句,拜访-我们在星期五有聚会。

Source: https://habr.com/ru/post/zh-CN434158/


All Articles