云原生模式
- 发行日期
- 2020/08/09
- 作者
- Cornelia Davis
- 译者
- 张若飞、宋净超
- 发行方
- 电子工业出版社
- 相关链接
- item.jd.com

当我们在讨论云原生时究竟在讨论什么?这些年来我一直在思索这个问题,大家的观点可能不尽相同。三年前从我翻译了第一本云原生领域书籍开始,陆续参与翻译和创作了一系列云原生作品,同时通过对云原生领域的开源项目、社区、基金会、应用云化过程的参与和观察,我得出了下面的结论:云原生是一种行为方式和设计理念,究其本质,凡是能够提高云上资源利用率和应用交付效率的行为或方式都是云原生的。云计算的发展史就是一部云原生化的历史。云原生是云计算适应社会分工的必然结果,将系统资源、底层基础设施和应用编排交由云平台管理,让开发者专注于业务逻辑,这不正是云计算长久以来孜孜以求的吗?云原生应用追求的是快速构建高容错性、弹性的分布式应用,追求的极致的研发效率和友好的上线与运维体验,随云云原生的理念应运而生,它们天生适合部署在云上,可以最大限度利用云计算带来的红利。
在此之前我曾翻译过几本云原生主题的图书,其中 《Cloud Native Go》 的作者 Kevin Hoffman, 《云原生 Java》 的作者 Josh Long,他们都是来自 Pivotal 或曾在 Pivotal 工作多年,当看到此书时,我惊奇的发现,作者 Cornelia Davis 同样来自这家公司,Pivotal 真可谓是云原生的黄埔军校,此书的内容跟以往的云原生书籍有所不同,对于模式的梳理标新立异,因此我立马联系了电子工业出版社的张春雨编辑,经他了解到张若飞正在翻译此书,此前我已与他合作翻译了《云原生 Java》,本书算是我跟他的第二次合作,他翻译图书时的精准和高效着实让我佩服,我们各自翻译了本书一半的内容。 人人都在讨论云原生,但是究竟如何实现却莫衷一是。本书列举了构建云原生应用的 12 种模式,主要关注的是云原生应用的数据、服务与交互,即应用层面的设计模式,这些模式穿插于本书的第二部分各个章节中,基本覆盖了云原生应用的各个方面,并将理论结合实践,带领读者使用 Java 来实现一个云原生应用。
同时还要感谢 云原生社区 的成员及志愿者们,对于云原生在中国的发展做出的贡献,你们的鼓励和支持是在云原生领域不断努力和探索的动力。本书在翻译过程中难免有一些纰漏,还望读者指正。
章节目录
介绍云原生应用程序的各种模式、如何阅读本书以及作者介绍。
探索云原生的定义及其对现代应用程序的影响,了解如何在不断变化的环境中保持系统稳定性与高可用性。
了解在生产环境中运行云原生应用程序的挑战与解决方案,掌握持续交付和运维稳定性的关键实践。
探索云原生平台的发展历程及其核心功能,了解如何利用容器技术支持现代应用程序的开发与运维。
探索事件驱动微服务架构,理解请求/响应与事件驱动的区别,掌握在云原生环境中应用这两种编程模型的关键模式。
探讨云原生应用程序的水平扩展与无状态设计,理解有状态服务的挑战与解决方案,掌握构建高可用、弹性系统的关键模式。
探讨云原生应用程序的配置管理,理解系统环境与应用配置的区别,掌握使用属性文件和配置服务器的关键模式。
探讨云原生应用程序的生命周期管理,理解零停机升级、金丝雀发布和健康检查等关键模式,掌握在动态环境中保持系统稳定性的策略。
探讨云原生应用程序的服务抽象、动态路由和服务发现,理解服务端与客户端负载均衡的区别,掌握构建可扩展、高可用系统的关键模式。
探讨云原生软件中的交互冗余与请求重试,理解重试风暴的风险及其预防措施,掌握控制循环在构建弹性系统中的关键作用。
探讨云原生应用中的断路器和 API 网关,理解它们在提升系统弹性和安全性方面的关键作用,掌握 Sidecar 和服务网格等现代模式。
探讨云原生应用的故障排除方法,理解日志记录、监控和分布式跟踪在诊断复杂问题中的关键作用,掌握在动态环境中定位和解决问题的策略。
探讨云原生数据管理,理解缓存、事件驱动架构和事件源的关键模式,掌握构建自治性强、弹性高的数据系统的策略。