
Explore cloud concepts and spring cloud architecture, learn about packaging and deployment, and see Nemo and see architecture in action.
Monolithic architecture describes the traditional web application where a browser requests data from a server hosting the front end, business logic, and database access, returning results to the application.
Explore the advantages of monolithic architecture and learn how to implement, launch, test, and deploy it; then scale horizontally by running multiple copies behind a load balancer.
Avoid monolithic architecture's size and complexity limits by recognizing slow startup, mandatory redeployments for changes, hindered modular scaling, and costly upgrades.
Highlight microservice architecture by breaking the app into smaller interconnected services with own logic and adapters, communicating via rest or message-based APIs and avoiding monoliths.
Decompose complexity into manageable microservices to accelerate deployment, development, and maintenance. Empower independent teams to own each service, freely adopt suitable technologies, enable continuous deployment, and scale services independently.
Microservice architecture introduces complexity from distributed databases and cross-service transactions updating multiple entities. Deploying and testing spans many services behind load balancers.
Explore spring cloud architecture with API gateway routing, service discovery, and dynamic routing for client requests to microservices. See how Eureka, Zipkin, and ELK stack enable tracing, visualization, and logging.
Explore how a convention over configuration framework enables packaging and deployment of standalone spring-based apps with embedded Tomcat, no xml configuration, external configuration, and metrics and health checks.
Explains the service structure in a springboard deployment, outlining a resource controller with surface methods for the model and its services, plus the business logic for the risk controller.
Explore a case study of Spring architecture, examine different architectures and process architecture, and preview a practical demo of the concepts discussed.
Explore Spring Cloud architecture by examining account and customer services, discovery and gateway components, and how controllers, models, and repositories connect to the database.
Discover the architecture options, including microservice advantages and disadvantages, explore Spring Cloud architecture, and see a live demo of deploying and packaging with Springboard, a gateway, and a service registry.
The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
A key element of Spring is infrastructural support at the application level: Spring focuses on enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.
Microservices allow large systems to be built up from a number of collaborating components. It does at the process level what Spring has always done at the component level: loosely coupled processes instead of loosely coupled components.
Shopping Application
For example imagine an online shop with separate microservices for user accounts, product-catalog order-processing, and shopping carts:
Inevitably there are a number of moving parts that you have to set up and configure to build such a system. How to get them working together is not obvious - you need to have good familiarity with Spring Boot since Spring Cloud leverages it heavily, several Netflix or other OSS projects are required and, of course, there is some Spring configuration “magic”!
Implementing a microservices architecture in Java isn’t for everyone. For that matter, implementing microservices, in general, isn’t often needed. Most companies do it to scale their people, not their systems. If you’re going to scale your people, hiring Java developers is one of the best ways to do it. After all, there are more developers fluent in Java than most other languages - though JavaScript seems to be catching up quickly!
The Java ecosystem has some well-established patterns for developing microservice architectures. If you’re familiar with Spring, you’ll feel right at home developing with Spring Boot and Spring Cloud