Book description
Build and deliver production-grade cloud-native apps with Spring framework and Kubernetes.In Cloud Native Spring in Action you’ll learn:
- Cloud native best practices and design patterns
- Build and test cloud native apps with Spring Boot and Spring Cloud
- Handle security, resilience, and scalability in imperative and reactive applications
- Configure, deploy, and observe applications on Kubernetes
- Continuous delivery and GitOps to streamline your software lifecycle
Cloud Native Spring in Action is a practical guide to building applications that are designed for cloud environments. You’ll learn effective Spring and Kubernetes cloud development techniques that you can immediately apply to enterprise-grade applications. Follow a detailed and complete cloud native system from first concept right through to production and deployment, learning best practices, design patterns, and little-known tips and tricks for pain-free cloud native development. Including coverage of security, continuous delivery, and configuration, this hands-on guide is the perfect primer for navigating the increasingly complex cloud landscape.
About the Technology
Do you want to learn how to build scalable, resilient, and observable Spring applications that take full advantage of the cloud computing model? If so, Cloud Native Spring in Action is the book for you! It will teach you the essential techniques and practices you need to build efficient Spring Boot applications ready for production in the cloud.
About the Book
In Cloud Native Spring in Action, you’ll learn how to containerize your Spring Boot applications with Cloud Native Buildpacks and deploy them on Kubernetes. This practical guide delivers unique insights into hosting microservices, serverless applications, and other modern architectures on cloud platforms. You’ll learn how to use Spring-based methodologies, practices, and patterns that you won’t find anywhere else.
What's Inside
- Implement cloud native patterns with Spring
- Handle security, resilience, and scalability
- Build and test imperative and reactive applications
- Configuration and observability on Kubernetes
- Adopt continuous delivery and GitOps
About the Reader
For intermediate Java developers.
About the Author
Thomas Vitale is a software engineer, open source contributor, and international conference speaker.
Quotes
This book is fantastic. It’s brimming with valuable ideas couched in evident, profound experience. I will be pointing people to this book for the foreseeable future.
- From the Foreword by Josh Long, Spring Developer Advocate, VMware
One of the best I’ve read. I now feel qualified to begin moving applications to a cloud-native architecture.
- Steve Rogers, CGTek
An essential resource for creating the next generation of enterprise apps.
- Conor Redmond, InComm Payments
A welcome collection of insights on building and deploying microservices across various domains.
- George Thomas, Manhattan Associates
Table of contents
- Cloud Native Spring in Action
- Copyright
- dedication
- contents
- front matter
- Part 1 Cloud native fundamentals
- 1 Introduction to cloud native
-
2 Cloud native patterns and technologies
-
2.1 Cloud native development principles: 12 Factors and beyond
- 2.1.1 One codebase, one application
- 2.1.2 API first
- 2.1.3 Dependency management
- 2.1.4 Design, build, release, run
- 2.1.5 Configuration, credentials, and code
- 2.1.6 Logs
- 2.1.7 Disposability
- 2.1.8 Backing services
- 2.1.9 Environment parity
- 2.1.10 Administrative processes
- 2.1.11 Port binding
- 2.1.12 Stateless processes
- 2.1.13 Concurrency
- 2.1.14 Telemetry
- 2.1.15 Authentication and authorization
- 2.2 Building cloud native applications with Spring
- 2.3 Containerizing applications with Docker
- 2.4 Managing containers with Kubernetes
- 2.5 Polar Bookshop: A cloud native application
- Summary
-
2.1 Cloud native development principles: 12 Factors and beyond
- Part 2 Cloud native development
- 3 Getting started with cloud native development
- 4 Externalized configuration management
- 5 Persisting and managing data in the cloud
- 6 Containerizing Spring Boot
- 7 Kubernetes fundamentals for Spring Boot
- Part 3 Cloud native distributed systems
-
8 Reactive Spring: Resilience and scalability
- 8.1 Asynchronous and non-blocking architectures with Reactor and Spring
- 8.2 Reactive servers with Spring WebFlux and Spring Data R2DBC
- 8.3 Reactive clients with Spring WebClient
- 8.4 Resilient applications with Reactive Spring
- 8.5 Testing reactive applications with Spring, Reactor, and Testcontainers
- Summary
- 9 API gateway and circuit breakers
- 10 Event-driven applications and functions
-
11 Security: Authentication and SPA
- 11.1 Understanding the Spring Security fundamentals
- 11.2 Managing user accounts with Keycloak
- 11.3 Authentication with OpenID Connect, JWT, and Keycloak
- 11.4 Authenticating users with Spring Security and OpenID Connect
- 11.5 Integrating Spring Security with SPAs
- 11.6 Testing Spring Security and OpenID Connect
- Summary
- 12 Security: Authorization and auditing
- Part 4 Cloud native production
-
13 Observability and monitoring
- 13.1 Logging with Spring Boot, Loki, and Fluent Bit
- 13.2 Health probes with Spring Boot Actuator and Kubernetes
- 13.3 Metrics and monitoring with Spring Boot Actuator, Prometheus, and Grafana
- 13.4 Distributed tracing with OpenTelemetry and Tempo
- 13.5 Application management and monitoring with Spring Boot Actuator
- Summary
-
14 Configuration and secrets management
- 14.1 Configuring applications on Kubernetes
- 14.2 Using ConfigMaps and Secrets in Kubernetes
-
14.3 Configuration management with Kustomize
- 14.3.1 Using Kustomize to manage and configure Spring Boot applications
- 14.3.2 Managing Kubernetes configuration for multiple environments with Kustomize
- 14.3.3 Defining a configuration overlay for staging
- 14.3.4 Customizing environment variables
- 14.3.5 Customizing ConfigMaps
- 14.3.6 Customizing image name and version
- 14.3.7 Customizing the number of replicas
- Summary
- 15 Continuous delivery and GitOps
- 16 Serverless, GraalVM, and Knative
- Appendix A Setting up your development environment
- Appendix B Kubernetes in production with DigitalOcean
- index
Product information
- Title: Cloud Native Spring in Action
- Author(s):
- Release date: January 2023
- Publisher(s): Manning Publications
- ISBN: 9781617298424
You might also like
book
Hands-On Microservices with Spring Boot and Spring Cloud
Apply microservices patterns to build resilient and scalable distributed systems Key Features Understand the challenges of …
book
Cloud Native Go
What do Docker, Kubernetes, and Prometheus have in common? All of these cloud native technologies are …
book
Spring Microservices in Action, Second Edition
By dividing large applications into separate self-contained units, Microservices are a great step toward reducing complexity …
book
Microservices with Spring Boot and Spring Cloud - Second Edition
Create and deploy production-quality microservices-based applications — New edition updated for the smooth running of Spring, …