写点什么

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:002856
用户头像

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

关注

评论

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

使用 Helm 部署 Wikijs

东风微鸣

k8s openshift wiki

关于整理东西这件事「Day 8」

道伟

28天写作

程序员成长第十六篇:代码重构

石云升

程序员 28天写作 2月春节不断更

c++基本语法详解

张鹤羽

28天写作 3月日更

易语言使用与研究

慕容

易语言

谈学习

Ryan Zheng

学习方法

我眼中的IT售前工作

Geek_dn82ci

云计算 职场 解决方案 售前

诊所数字化:诊所私域直播

boshi

直播带货 数字化医疗 七日更 28天写作

如何节省数据库写操作资源(6)【写缓存】

我爱娃哈哈😍

数据库 缓存 架构设计 抢购思路 写缓存

必学必会-音频和视频

我是哪吒

html5 大前端 28天写作 2月春节不断更

【死磕JVM】五年 整整五年了 该知道JVM加载机制了!

牧小农

JVM 类加载 类加载器 类加载时机 双亲委派

论文阅读:通过动态预测/完备在稀疏知识图谱上进行多跳推理

Alocasia

自然语言处理 深度学习 nlp 强化学习

第五周作业-第四章作业(二)

Geek_72d5ab

业务中台建设 - 4种部署模式

孝鹏

部署图 隔离性 中台架构

你存在我深深的脑海里——兼谈间隔效应

Justin

心理学 28天写作 游戏设计

第五次作业

秦挺

模型评估指标-1-基础篇-FPR/TPR/F1/ROC/AUC

一直学习一直爽

机器学习 模型评估 分类模型 一直学习一直爽

第四章作业(二)

墨狂之逸才

翻译:《实用的Python编程》03_00_Overview

codists

Python

消灭微服务的坏味道 之 共享库

码猿外

微服务 共享库

mybatis的通用插入更新方案

altantisor

Java mybatis

现在写还来得及吗?

Nydia

最值得阅读的数据仓库书籍推荐

白贺BaiHe

大数据 数据仓库 推荐书籍 数仓 构建模型

从一次洗头发的经历,学习一家公司的成长

数列科技杨德华

28天写作

javascript中的模块系统

程序那些事

JavaScript 程序那些事 模块系统

产品经理训练营 - 作业五

胡小湖

“他者”德意志(三):“翻险峰”的德国电动汽车产业

脑极体

(28DW-S8-Day8) 区块链之瞎扯淡

mtfelix

区块链 28天写作

LeetCode题解:122. 买卖股票的最佳时机 II,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

Linux入门篇 —— 一文带你彻底搞懂Linux 文件权限管理

若尘

Linux 权限 linux 文件权限控制

一文搞懂Cookie、Storage、IndexedDB

执鸢者

大前端 Cookie indexedDB storage

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