《云原生架构容器&微服务优秀案例集》——03 零售/电商——完美日记 容器化改造实现增效降本

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 《云原生架构容器&微服务优秀案例集》——03 零售/电商——完美日记 容器化改造实现增效降本

客户简介

完美日记成立于 2016 年,是广州逸仙电子商务有限公司旗下品牌。品牌致力于探索欧美时尚趋势,同时结合亚洲女性面部和肌肤特点,研发一系列“高品质、精设计”的欧美时尚彩妆产品。


客户痛点


自行维护服务器成本过高 : 早期互联网公司通常直接购买服务器, 并在 IDC 机房租用机架进行部署, 将应用程序直接运行在物理机上。如果需要扩展, 就必须购买新的服务器。IDC 机房会频繁出现各种故障,如果发生 IDC 迁移,就更加麻烦,必须在半夜搬机器,在成本、服务稳定性和工作效率等方面都会造成巨大的消耗。

工发版繁琐易错 : 2019 年双 11 大促前夕, 小程序刚刚上线。当时采用传统的部署方式, 特别是某些应用需要在 SLB 上配置 (openrestry), 运维人员需要在 SLB 上一个个勾选服务器, 发布版本的时间长达半个小时以上。如果发版中出现问题, 通常还需要延长一个小时以上的时间来处理。


大规模应用的研发与运维挑战 : 对于大规模应用的研发和运维人员来说, 是否拥有足够的技术和能力来应对挑战, 产品架构设计是否可以满足未来的企业需求, 组织架构和文化是否已经适应企业的新战略发展。


方案亮点


全栈容器化简化服务器运维 : 从 2019 年开始, 完美日记就开始筹备容器化改造, 包括改造方案的设计和阿里云 Kubernetes 的选择。经过仔细的测试和结合公司情况和人员配备情况, 最终选择了阿里云 ACK 托管版进行大规模应用部署, 一次性将所有应用迁移到 ACK 容器服务, 并以标准的 Kubernetes 方式进行运维部署。


全链路可观测和流量防护提升业务稳定性 : 完美日记将 IT 系统接入全链路可观测产品 ARMS,跟踪复杂的服务调用, 并对异常服务进行快速定位和修复。 ARMS Prometheus 对 ACK 容器资源进行统一监控。同时, 使用性能测试服务 PTS 进行压力测试, 利用秒级流量和真实地理位置流量等特性进行测试。通过收集压测数据并分析系统的强依赖和关键瓶颈点,对关键业务接口、关键第三方调用、数据库慢调用等进行限流保护。


简单稳定且低成本的容器镜像仓库服务 : 完美日记选用阿里云镜像企业版 ACR EE, 因为它比自建 Harbor 更稳定、成本更低。自建 Harbor 需要考虑计算、数据库和磁盘成本,如果项目很多或镜像比较多,磁盘成本也会很高。而镜像企业版无需考虑维护成本。此外,镜像企业版可以高并发,而自建 Harbor 则容易出现镜像 PULL 问题。

image.png


建设成果

云原生极大提升运维效率, 降低人力成本 : 容器化改造之后, 整个系统变得更加“轻松”。在切换到 Kubernetes 正式环境后,扩容时间只需要约 90 秒,节约了大量时间。根据运营节奏进行扩容, 服务器扩容成本降低了 70%~90%。同时, 部署效率大幅提升, 只需要按照文件模板创建一个服务,部署时间就能减少 90%。


提升资源利用率,降低资源和管理成本 : 服务器资源可以自动计算并部署到服务器上,利用隔离技术可以部署多个项目服务器,提高 50% 利用率。服务模块的自动负载均衡无需人工干预,工作量减少 90%。服务模块的伸缩容无需编写脚本, 只需点击伸缩按钮, 就可以减少人工错误率,作量降低 70%。服务模块不可用时会自动剔除并自动重启服务模块。服务器宕机时, 运行在服务器上的服务模块会自动转移到可用服务器上,无需人工干预,工作量降低 100%。


客户证言

“我们的技术人员跟阿里云的技术人员其实非常熟悉, 在双 11 期间阿里云也给予了很多技术层面的支持 : 我们遇到的问题他们基本都遇到过, 我们没遇到的问题, 他们也都遇到过。在巨人的肩膀上进行容器化改造,对于当下的完美日记而言,是最合适的。”


相关产品

 容器服务 ACK

2 容器镜像服务 ACR

5 微服务引擎 MSE

6 应用高可用服务 AHAS

3 性能测试 PTS

4 应用实时监控服务 ARMS

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
1天前
|
运维 监控 Docker
使用Docker进行微服务架构的部署
【5月更文挑战第18天】本文探讨了如何使用Docker进行微服务架构部署,介绍了Docker的基本概念,如容器化平台和核心组件,以及它与微服务的关系。通过Docker,每个微服务可独立运行在容器中,便于构建、测试和部署。文章详细阐述了使用Docker部署微服务的步骤,包括定义服务、编写Dockerfile、构建镜像、运行容器、配置服务通信、监控和日志管理以及扩展和更新。Docker为微服务提供了可移植、可扩展的解决方案,是现代微服务架构的理想选择。
|
1天前
|
敏捷开发 监控 API
构建高效微服务架构:从理论到实践
【5月更文挑战第18天】 在当今快速发展的软件开发领域,微服务架构已经成为一种流行的设计模式,它通过将大型应用程序分解为一系列小型、独立的服务来提高系统的可伸缩性、弹性和维护性。本文旨在探讨如何从理论走向实践,构建一个高效的微服务架构。文章首先介绍微服务的基本概念和优势,然后详细讨论了在设计和部署微服务时需要考虑的关键因素,包括服务划分、通信机制、数据一致性、容错处理和监控策略。最后,结合具体案例分析,展示如何在现实世界中应用这些原则,确保微服务架构的高效运行。
|
1天前
|
存储 弹性计算 运维
探索微服务架构下的服务治理
【5月更文挑战第18天】 在当今软件工程领域,微服务架构因其灵活性、可扩展性以及促进团队协作等优势而受到广泛青睐。然而,随着系统规模的增长和服务数量的膨胀,服务治理成为确保系统稳定性和高效性的关键因素。本文将深入探讨微服务环境下的服务治理实践,包括服务发现、配置管理、负载均衡、故障处理等关键方面,旨在为开发者提供一套行之有效的服务治理策略。
|
2天前
|
监控 持续交付 开发者
构建高效微服务架构:后端开发的新范式
【5月更文挑战第18天】 随着现代软件开发的复杂性日益增长,传统的单体应用架构已难以满足快速迭代和灵活部署的需求。本文聚焦于一种新兴的解决方案——微服务架构,探讨其如何为后端开发带来革命性的改变。我们将深入分析微服务的核心概念、优势与挑战,并通过具体案例来阐述如何在实际项目中实施微服务架构。文章旨在为开发者提供一种系统化的方法,帮助他们理解并应用微服务架构,以提升系统的可维护性、扩展性和技术敏捷性。
11 2
|
2天前
|
测试技术 持续交付 API
构建高效的微服务架构:后端开发的现代实践
【5月更文挑战第18天】在数字化转型的浪潮中,微服务架构已成为企业追求敏捷、可扩展和容错能力的关键解决方案。本文将深入探讨微服务的核心概念,包括其设计原则、技术栈选择以及实施过程中的挑战与对策。通过对微服务架构实践的详细剖析,旨在为后端开发人员提供一套构建和维护高效微服务系统的实用指南。
|
2天前
|
缓存 算法 Apache
微服务架构下的服务发现与注册机制
【5月更文挑战第18天】 随着现代软件系统向着分布式和微服务架构演进,服务发现与注册成为确保系统弹性和可伸缩性的关键因素。本文将探讨在微服务环境下实现服务发现与注册的模式,分析其必要性,并深入讨论常见的解决方案以及面临的挑战。文中不仅介绍了服务发现的基本原理和流程,还对流行的服务发现工具如Consul、Etcd和Zookeeper进行了比较,最后提出了一套优化策略以增强系统的鲁棒性和性能。
|
2天前
|
运维 负载均衡 监控
探索微服务架构下的服务网格
【5月更文挑战第17天】 在当代软件开发领域,微服务架构已成为构建可扩展、灵活且容错的系统的首选模式。然而,随之而来的复杂性问题也日益凸显,特别是在服务间的通信管理上。服务网格(Service Mesh)作为一种新兴的解决方案,专门处理服务到服务的通信问题,旨在提供一种更加智能和动态的方式来管理微服务环境中的流量和服务依赖。本文将深入探讨服务网格的概念、优势以及如何在微服务架构中实现高效通信。
|
2天前
|
Kubernetes API 数据库
构建高效微服务架构:后端开发的新趋势
【5月更文挑战第17天】 随着云计算的普及和容器化技术的成熟,微服务架构已成为企业软件开发的首选模式。该架构通过将大型应用程序拆分为一系列小型、自治的服务来提供灵活性和可扩展性。本文将探讨微服务架构的关键概念,包括服务的细粒度划分、独立部署、以及如何通过容器编排实现高可用性。同时,我们将讨论微服务实施的最佳实践和面临的挑战,为后端开发者提供构建和维护微服务系统的实用指南。
|
2天前
|
消息中间件 安全 数据库
构建高性能微服务架构的实践指南
【5月更文挑战第17天】 随着现代软件开发的复杂性增加,微服务架构已成为众多企业和开发团队的首选模式。本文旨在探讨如何构建一个高性能的微服务系统,涵盖从设计原则、技术选型到性能优化的关键步骤。我们将通过实际案例和最佳实践,展示如何在保证系统可扩展性、灵活性的同时,确保系统的响应速度和稳定性。
|
2天前
|
Kubernetes 持续交付 Docker
构建高效微服务架构:Docker与Kubernetes的完美搭档
【5月更文挑战第17天】在当今云计算和微服务架构的大潮中,Docker容器化技术和Kubernetes容器编排系统成为了后端开发领域的热门技术栈。本文将探讨如何通过Docker和Kubernetes的结合使用来构建一个高效、可扩展且易于管理的微服务环境。我们将从基础概念出发,深入到实际操作层面,最后讨论这种组合对持续集成和持续部署(CI/CD)流程的影响,旨在为开发者和企业提供一种可靠的后端服务解决方案。