Cloud Native Java:使用Java构建云原生应用
624 页
Chinese
PDF
4.5

Cloud Native Java:使用Java构建云原生应用

Cloud Native Java:使用Java构建云原生应用

作者:

年份:

简介:

引言

《Cloud Native Java》一书(作者:Josh Long和Kenny Bastani)于2017年出版,但至今仍是关于在Java平台上构建云原生应用最深入、最实用的指南之一。在微服务和容器化已成为事实标准的时代,这本书不仅提供了一系列解决方案,还提供了一套基于12因素方法和Spring生态系统的完整方法论。

Josh Long是Pivotal(现为VMware)著名的Spring布道师,而Kenny Bastani则是微服务和云架构方面的专家。他们的合著作品长达624页,内容紧凑而引人入胜,对经验丰富的Java开发人员以及正在向云端迁移的架构师都大有裨益。

这本书是关于什么的?

《Cloud Native Java》并非教授Java语言基础,而是教你如何以云原生的方式思考。重点内容包括:

  • 微服务架构——如何使用Spring Boot和Spring Cloud将单体应用拆分为松耦合的服务。
  • 12因素方法论——由Heroku提出的代码库、依赖、配置、日志、进程等原则。
  • Cloud Foundry平台——如何在云环境中部署、扩展和管理应用(尽管示例可以轻松适配Kubernetes)。
  • 响应式编程——Spring WebFlux和响应式流在高负载系统中的入门介绍。
  • 安全与监控——OAuth2、JWT、分布式追踪(Spring Cloud Sleuth、Zipkin)。

本书围绕一个贯穿始终的示例——一个任务管理应用展开,该应用逐步从一个简单的单体应用演变为一个完整的云原生系统。

这本书适合谁?

目标读者是已经熟悉Java和Spring,并希望转向现代云实践经验的开发人员。如果你:

  • 使用Java编程至少一年;
  • 了解Spring基础(DI、MVC、JPA);
  • 希望了解如何构建易于扩展且无需停机即可更新的微服务;
  • 对DevOps和云平台(Cloud Foundry、Kubernetes、Docker)感兴趣;

——那么这本书适合你。对于Java新手来说可能会比较困难:作者不会解释基本结构,而是直接进入架构决策。

读者将学到什么?

阅读后,你将能够:

  • 遵循12因素方法论设计微服务;
  • 使用Spring Boot快速创建生产就绪的服务;
  • 通过Config Server配置外部配置;
  • 实现服务发现(Eureka)和负载均衡(Ribbon、Feign);
  • 使用Hystrix(断路器)增加弹性;
  • 组织分布式追踪和监控;
  • 在Cloud Foundry中部署应用并管理其生命周期;
  • 使用响应式方法(WebFlux)实现非阻塞I/O;
  • 集成OAuth2和JWT以实现服务间的安全交互。

每章都包含实践练习,并附有包含完整示例代码的GitHub仓库链接。

优势

首先吸引人的是深度和系统性。这本书不仅仅是列举技术,而是解释为什么做出某个决定。例如,作者详细分析了为什么12因素应用应该将配置存储在环境变量中而不是文件中,以及这如何影响扩展。

其次是实践导向。每个概念都有可立即运行的代码支持。关于Cloud Foundry的章节尤其宝贵:即使你不使用该平台,部署和应用管理的原则也是通用的。

第三是时效性。尽管是2017年的书,但90%的内容仍然相关。Spring Cloud、Hystrix、Eureka

推荐