Building Modern Business Applications: Reactive Cloud Architecture for Java, Spring, and PostgreSQL
- 3h 19m
- Peter Royal
- Apress
- 2023
Discover a new way of thinking about business applications in light of the massive industry shift toward cloud computing and reactive programming technologies. This book synthesizes technologies and techniques such as event sourcing, command query responsibility segregation (CQRS), property-based testing, and GraphQL into a cohesive guide for modern business applications that benefit every developer.
The book begins with a look at the fundamentals of modern business applications. These fundamentals include business rules and the managing of data over time. The benefits of reactive techniques are explained, including how they are fundamentally aligned with what application developers strive to achieve in their work.
Author Peter Royal equips you with sound guidance to follow as you evolve your existing systems, as well as examples of how to build those systems using modern techniques in Spring, Java, and PostgreSQL.
What You Will Learn
- Architect business applications for cloud-based environments
- Design sustainable business applications
- Integrate GraphQL best practices into business applications
- Use property-based testing to exhaustively test possible system states
- Think about business applications in terms of message flows
- Relate the benefits of reactive systems to business goals
- Model time appropriately for business requirements
Who This Book Is For
Practicing software developers who are building business applications, developers who are being asked to deploy into cloud environments that are more volatile than statically provisioned data centers, developers who want to increase the reliability of their systems and are struggling to find the right paradigms and architectures to achieve their goals, developers who see and use capabilities in software in other areas of their lives and want to bring those capabilities into their own work, and developers with experience designing other types of software who want to learn how to design business applications
About the Author
Peter Royal is a software developer currently residing in Los Angeles, CA. He has been writing software since high school, with his first business application being a calendar tool for his school. Since then, he has written business applications for a variety of industries as a contractor or in-house developer. He enjoys building tools for co-workers and being able to work with colleagues to iterate and customize, with the goal of making tools that are not frustrating to use. He has come to appreciate pragmatic architectures and practices that enable systems to thrive for the long-term.
In this Book
-
What is a Business Application?
-
The Status Quo (and How it Came to Be)
-
What is a Reactive System?
-
Why Build Business Applications as Reactive Systems?
-
What is a Business Rule?
-
Managing Time
-
Constraints and Principles
-
High-Level Data Flow
-
Command Processor
-
Command Generator
-
Event Materializer
-
Testing, Monitoring, and Observability
-
Required Technologies
-
Building with Modern Spring, Java, and PostgreSQL
-
Expansion Points and Beyond