聚热点 juredian

波司登云原生微服务治理探索

点击链接阅读原文,获取更多技术内容:

作者:山猎,珑乘

背景

波司登创始于1976年,专注于羽绒服的研发、设计、制作,是全球知名的羽绒服生产商。波司登用一系列世人瞩目的辉煌成绩证明了自己的实力:连续26年全国销量领先,连续22年代表中国向世界发布防寒服流行趋势,产品畅销美国、法国、意大利等72个国家,全球超过2亿用户。作为羽绒服革命的旗手,波司登引领了行业内的“三次革命”。

在产品力和销售成绩单背后,波司登在生产、仓储、物流、销售各环节已完成数字化转型和创新改造。除生产端的智能生产工厂,波司登对仓储和物流环节也进行智能化改造,提升小单快反、拉式补货的比重,最大限度减少困扰服装企业多时的“库存”问题;为了精准分发销售端产品,波司登建立数据中台,打通全渠道数据,赋能消费者研究、商品企划、渠道匹配等。现在,波司登每件羽绒服从生产到抵达消费者,背后都是一段数字之旅。

云原生技术发展

随着波司登数字业务的飞速发展,背后的 IT 技术也在不断更新迭代。波司登极为重视客户对服务的体验,并将系统稳定性、业务功能的迭代效率、问题的快速定位和解决视为构建核心竞争力的基石。服饰行业会积极参与各大电商平台的促销活动,业务流量的波峰波谷现象明显,如果由于资源分配不合理导致高峰时期订单溢出、运力不足,会极大影响顾客和商家的体验。

此外,波司登自研了用户运营平台(用户洞察系统、内容管理系统、用户管理 CRM 系统及用户小程序)、零售运营平台(线上平台订单管理 OMS 系统、线下渠道管理系统、门店收银 POS 系统)、商品运营平台(订单处理中心 OPC、库存计算中心 ICC、商品订货系统、商品运营 iMOS 系统、采购制造 GiMS 系统、物流管理 EWM 系统、机器人调度 WCS 系统) 等诸多垂直业务功能,在市场需求的快速变化下,产品功能创新和迭代效率问题也是对技术架构的一大挑战。

这些现状的解法和云原生架构带来的核心能力不谋而合,在波司登系统改造上云的过程中,CIO 戴建国亲自带队,围绕着云原生技术体系,推动波司登的各条业务线进行技术升级改造,加快数智化发展进程。在技术选型上,波司登始终遵循着2条原则:

全面拥抱开源开放的主流技术标准。 使用开源开放的主流技术标准可以确保技术方案的成熟度,更便捷的从开发者社区获取技术资源和最佳实践,也能够帮助企业更好的招募技术人才。此外,这样的策略也避免了被封闭技术体系和特定云厂商所捆绑。

尽可能利用云计算的价值。 将稳定性保障、底层技术实现、技术组件维护、弹性伸缩等非功能性需求尽可能交给云厂商解决,让技术团队将更多的精力投入到业务创新上。

这2个原则并不矛盾,相反,它们之前可以非常好的融合,是所有使用云计算的企业用户都值得借鉴的架构选型标准。比如 Kubernetes 就是典型的满足开源开放标准的技术标准,阿里云提供的 Kubernetes 产品可以简化用户的搭建成本,更好的与云计算资源进行集成。同时用户依然可以基于开源 Kuberntes 的标准协议与 API 使用云产品,这就是2条选型原则相互融合的最好体现。

容器化改造

云原生趋势下,Kubernetes 毫无疑问已经成为了企业新一代云 IT 架构的基础设施。从2021年开始,波司登就开启了微服务和容器化改造计划,将 IT 系统的底座逐步从虚拟机迁移到 Kubernetes。

在 Kubernetes 平台的选择上,基于技术选型的2条原则,波司登选择了阿里云容器服务 ACK 。ACK 以阿里云可靠稳定的 IaaS 平台为底座,向下封装了 30+ 款云产品,形成了自动化运维和云平台交互的新界面,从而提升企业业务系统的弹性和自动化运维能力。

基于容器服务 ACK 的易用性以及集成能力,波司登IT系统容器化改造工作比预想中的要顺利得多。对于每一个业务系统而言,从虚拟机迁移到 Kubernetes ,仅仅是底层的承载发生了变化,不会涉及到太多的改造成本。在关键的容器网络实现上,容器服务 ACK 通过云原生 Terway 网络模式,直接基于阿里云的虚拟化网络中的弹性网卡资源来构建的容器网络,将容器和虚拟机纳入同一层网络中,便于业务云原生化迁移。这样完全可以对传统架构实现渐进式容器化改造,在不中断业务的前提下一点一点的从虚拟机往 Kuberntes 上搬。在容器化改造的过程中,当波司登技术团队遇到疑难问题的时候,可以第一时间从阿里云获得最佳实践指导,包括集群规划、平台运维、应用适配、安全防护、可观测等多个方面,这也更进一步的提升了容器化改造的速度。

目前,波司登的自研系统已经 100% 基于 Kubernetes。相比传统的基于虚拟机部署方式, 容器化帮助波司登在资源利用率上提升了30%,在运维效率上提升了40%。 波司登的技术团队也在容器化改造的过程中,掌握了管理超大规模Kubernetes集群的能力,并促成了更多云原生新技术的运用。

统一微服务架构

容器化改造几乎同步进行的是对微服务架构的统一。在此之前,波司登的各个业务单元多种技术栈并存,彼此之间相互通讯复杂度高,项目成员的交接往往要耗费巨大的精力,极大程度上阻碍了数字化转型的进展,因此微服务架构统一势在必行。在 CIO 戴建国的带领下,波司登经历了1年多时间完成了这一项艰巨的工作,虽然投入精力巨大,但收益是立竿见影的,而且可以持续发挥作用:不论是内部团队还是三方 ISV ,在技术框架上都有统一的标准可以遵循,各团队共享技术栈后,研发效率成倍提升。

关系到未来多年的 IT 战略,在微服务架构的选型上,高开放性、高成熟度、高普及度这三条标准缺一不可,考虑到波司登以 Java 为主要开发语言,Spring Cloud Alibaba就成为了微服务框架的最佳选择。

Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案,包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。这些组件一部分以 SDK 的形式集成到代码中,一部分以中间件的形式独立运行,后者往往可以选择托管版云产品,以降低开发者的工作量。比如阿里云微服务引擎 MSE 就提升了开箱即用的注册配置中心 Nacos,以及云原生网关。

微服务架构的挑战

微服务对单体架构进行了拆分,不同模块之间通过网络进行通讯,本质上来讲,这并没有降低系统的复杂度,反而让系统复杂度大幅度提升,在管理难度上也为开发者提出了更高的挑战。随着微服务架构的深入使用,波司登技术团队遇到了2个难题:

性能问题定位困难 。 随着业务规模的增长,对于每一个来自用户的请求,链路变得越来越长,这也代表着应用之间的调用关系变得越来越复杂。传统的依赖于单机业务日志的监控手段根本无从下手,这就需要建立全新的链路跟踪机制,帮助开发者全面洞察系统运行状态,并在系统遇到异常的时候快速的定位和解决问题。这个挑战相对比较容易解决,阿里云的 ARMS 应用监控提供了无侵入式方案实现微服务链路跟踪,在易用性、功能性、稳定性上都有突出的表现。波司登把部署在容器服务 ACK 的微服务应用一键接入 ARMS 应用监控后,接下来要做的事情就主要是熟练掌握工具,并配合 Promethues/Grafana 实现统一大盘,并利用报警平台实现事件闭环,ARMS 也通过开箱即用的方式在云上提供了相关工具。

剩余60%,完整内容请点击下方链接查看:

阿里云开发者社区,千万开发者的选择。百万精品技术内容、千节免费系统课程、丰富的体验场景、活跃的社群活动、行业专家分享交流,尽在:

本站资源来自互联网,仅供学习,如有侵权,请通知删除,敬请谅解!
搜索建议:波司登云原生微服务治理探索  波司登  波司登词条  原生  原生词条  治理  治理词条  探索  探索词条  服务  服务词条