Modernizing Enterprise Java

Book description

None

Publisher resources

View/Submit Errata

Table of contents

  1. From Platform to Ecosystem
  2. Preface
    1. Conventions Used in This Book
    2. Using Code Examples
    3. O’Reilly Online Learning
    4. How to Contact Us
    5. Acknowledgments
  3. 1. Revisiting Enterprise Development
    1. From Public to Private. Why Clouds?
    2. What “Cloud Native” Means
    3. Kubernetes-Native Development
    4. Containers and Orchestration for Developers
      1. Container-Native Runtime
      2. Kubernetes Flavors
    5. Managing Development Complexity
    6. DevOps and Agility
    7. Summary
  4. 2. The Path to Cloud Native Java
    1. Cloud Native Workshop
    2. Architecture
    3. Create an Inventory Microservice with Quarkus
      1. Create Quarkus Maven Project
      2. Create a Domain Model
      3. Create a RESTful Service
      4. Run the App in Dev Mode
    4. Create a Catalog Microservice with Spring Boot
      1. Create a Maven Project
      2. Create a Domain Model
      3. Create a Data Repository
      4. Create a RESTful Service
    5. Create a Gateway Service with Vert.x
      1. Create a Vert.x Maven Project
      2. Create an API Gateway
    6. Create a Frontend with Node.js and AngularJS
      1. Run the Frontend
    7. Summary
  5. 3. Travel Light on Your Pathway
    1. Three-Tier or Distributed System
      1. Technology Updates, Modernization, and Transformation
      2. The 6 Rs
    2. Divide and Containerize
      1. Kubernetes as the New Application Server?
      2. Define Your Target Platform
    3. Mandatory Migration Steps and Tools
      1. Create an Application Portfolio
    4. Prepare for Big Things
    5. Summary
  6. 4. A Kubernetes-Based Software Development Platform
    1. Developers and Kubernetes
      1. What Kubernetes Does
      2. What Kubernetes Doesn’t Do
      3. Infrastructure as a Code
    2. Container Images
      1. Dockerfile
      2. Building Container Images
      3. Run Containers
      4. Registry
    3. Deploying to Kubernetes
      1. Pod
      2. Service
      3. Deployment
    4. Kubernetes and Java
      1. Jib
      2. JKube
    5. Summary
  7. 5. Beyond Lift and Shift: Working with Legacy
    1. Managing Legacy
      1. Assessing Applications for Migration
      2. Assessing Functionality for Migration
    2. Migration Approaches
      1. Protecting Legacy (Replatform)
      2. Build Something New (Refactor)
    3. Challenges
      1. Avoiding Dual-Writes
      2. Long-Running Transactions
      3. Removing Old Code Too Quickly
    4. Integration Aspects
    5. Summary
  8. 6. Building Kubernetes-Native Applications
    1. Find the Right Balance Between Scalability and Complexity
    2. Functional Requirements for Modern Architectures
      1. API-Driven
      2. Discovery
      3. Security and Authorization
      4. Monitoring
      5. Tracing
      6. Logging
      7. CI/CD
    3. Debugging Microservices
      1. Port Forwarding
      2. Quarkus Remote Development Mode
      3. Telepresence
    4. Summary
  9. 7. Tomorrow’s Solutions: Serverless
    1. What Is Serverless?
      1. Architectural Evolution
    2. Use Cases: Data, AI, and Machine Learning
    3. Use Cases: Edge Computing and IoT
    4. Knative: Serverless for Kubernetes
    5. Event-Driven Serverless Architectures
    6. Function as a Service for Java Applications
      1. Functions Deployment for Java Applications
      2. Boson Function CLI (func)
    7. Summary
  10. Index

Product information

  • Title: Modernizing Enterprise Java
  • Author(s): Markus Eisele, Natale Vinto
  • Release date:
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: None