阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

Zalando 从一体性架构转变为微服务的历程

  • 2016-02-21
  • 本文字数:883 字

    阅读完需:约 3 分钟

业界最负盛名的微服务大会 Microxchg 2016 上周于德国柏林举办。来自 Zalando Rodrigue Schaefer 为听众进行了一场演讲,Zalando 是一家在欧洲处于领先地位的时尚品牌科技公司,在总共上万名员工之中有一千多名是技术工作者。Rodrigue 在演讲中讲述了该公司如何将他们的系统从一个一体性的架构迁移至微服务的过程。

该系统原先的一体性应用是由 Java、Spring 及 Postgres 等技术所构建的,代码非常臃肿,并且充斥着大量的依赖,由此引起了许多协作方面的问题,最终造成了开发周期的逐渐缓慢。随着团队规模的扩大,bug 的比重也随之上升。为了巩固现有的系统而引入了许多僵化的流程,导致创新工作难以开展。此外,由于使用的技术栈有些“陈旧”,也造成了招聘进度的缓慢,并且增加了招聘工作的困难。

公司终于意识到他们应该给予团队充分的信任,而不是强行控制,这意味着每个团队都能够按照自身的技术、以及能够从其他部门那里所获得的帮助等条件来选择最适合自己的技术栈与工具。微服务的迁移工作目前已经开展了 9 个月,技术上的变化包括使用 AWS 进行设置、用 Docker 进行部署以及用 Appdynamics Zmon 进行监控,整个迁移过程已经完成了 90%。

对于这样一个大型公司来说,一旦将整个系统都构建在微服务架构上,就必须做好这 200 多个微服务随时可能发生故障的准备。开发者对于服务要承担起端到端的职责,从 DevOps 到 QA,直至部署过程。每个团队对于其他团队来说都必须表现为一种交付服务的 SaaS 平台,即使对于内部服务也一样。API 优先的概念则意味着全部 70 多个团队必须对于 API 规则保持一致。实现以上目标离不开制订各种规则的主体文档、充分的同行审查、以及对于业务实体的一致的理解。

至于在合规性与安全性方面,Zalando 遵循了四眼原则,并大量应用了审查记录跟踪的做法,以确保每个变更都可以追溯到具体的代码提交者。

新的系统不允许在不同的微服务之间使用共享的库,因此每个团队都必须实现开源,并遵循公司所建立的规则。最后,跨多个团队的测试服务是由一个跨职能的业务促进单位所实现的。

本次演讲的视频可以在 Youtube 上观看。

查看英文原文: From Monolith to Microservices, Zalando’s Journey

2016-02-21 18:002461
用户头像

发布了 428 篇内容, 共 171.9 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
发现更多内容

华为云MVP周峥:气象预报是个技术活,大数据、超算、AI,缺一不可

华为云开发者联盟

人工智能 大数据 环保 气象 超算

基于用户角色的数据库智能监控系统应用场景分析

华为云开发者联盟

数据库 架构 监控 用户 智能监控

PNEdit 百科

Geek_6bf591

vim emacs vscode UltraEdit 文本编辑器

PNFind文件搜索器

Geek_6bf591

vim emacs vscode UltraEdit 文本编辑器

架构实战营 模块二作业

脉醉

#架构实战营

重磅消息!写给安卓软件工程师的3条建议

欢喜学安卓

android 程序员 面试 移动开发

智慧能源:清洁低碳环保新能源,沙漠光伏与光热发电站 3D 可视化

一只数据鲸鱼

数据可视化 智慧能源 光伏发电 沙漠光伏

PNFile功能介绍

Geek_6bf591

vim emacs vscode UltraEdit 文本编辑器

为什么互动直播可以发展如此迅速?

anyRTC开发者

在线教育 视频直播 直播连麦 互动直播 电商直播

深度解析 Lucene 轻量级全文索引实现原理

vivo互联网技术

lucene 检索 索引技术

PNFile 百科

Geek_6bf591

PNTree 目录结构树

Geek_6bf591

vim emacs vscode UltraEdit 文本编辑器

PNComp目录比较器

Geek_6bf591

vim emacs vscode UltraEdit 文本编辑器

Pandas高级教程之:稀疏数据结构

程序那些事

Python 数据分析 pandas 程序那些事 稀疏矩阵

HCIA-HarmonyOS Application Developer 应用方向认证资料

爱吃土豆丝的打工人

HarmonyOS HCIA认证 应用开发方向

获客达人app系统开发

获客I3O6O643Z97

大数据

360 政企安全集团基于 Flink 的 PB 级数据即席查询实践

Apache Flink

flink

Go语言,你必须掌握的--高效并发模式!

微客鸟窝

Go 语言

一文搞懂一致性hash的原理和实现

万俊峰Kevin

微服务 hash Go 语言

PNEdit文本编辑器

Geek_6bf591

vim emacs vscode UltraEdit 文本编辑器

抖音霸屏系统软件开发

获客I3O6O643Z97

大数据 抖音霸屏

Python OpenCV 图像处理再循环,第一阶段复盘

梦想橡皮擦

7月日更

bash: docker-compose: 未找到命令

阿呆

Docker-compose

PNFile入门指南

Geek_6bf591

vim emacs vscode UltraEdit 文本编辑器

【LeetCode】滑动窗口的最大值Java题解

Albert

算法 LeetCode 7月日更

重磅来袭!全网最具深度的三次握手、四次挥手讲解

欢喜学安卓

android 程序员 面试 移动开发

Linux - 零拷贝

小方

Linux zero copy

什么是MircoPython?

华为云开发者联盟

Python 编程语言 物联网 MicroPython 嵌入式应用

网易传媒数据指标体系建设实践

网易数帆

大数据 数据仓库 指标体系

赋能中小银行数字营销:索信达助力深圳农商行建设标签系统

索信达控股

金融 银行 用户标签

基于RNN和CTC的语音识别模型,探索语境偏移解决之道

华为云开发者联盟

语音 RNN ASR CTC 语音识别模型

Zalando从一体性架构转变为微服务的历程_语言 & 开发_Alex Giamas_InfoQ精选文章