The definitive guide for designing and delivering reliable and high-performing persistence layers using Java in the cloud-native age.
Key Features
- Delve into database patterns to design readable and maintainable architectures and Java apps, along with eye-opening unraveling of persistence frameworks, how they work under the covers, and how to pick the best tool for scenario
- Know different techniques and practices to solve application and architecture persistence challenges. From an architecture's view, learn the pitfalls of persistence-related decisions and explore various databases, such as SQL, NoSQL, and NewSQL
- Immersive explanation about how to go through painless application modernization with change-data-capture powered by cloud-native technologies
Book Description
This book presents well-established patterns and standards that can be used in Java solutions, with valuable pros and cons of trendy technologies and frameworks used in cloud-native microservices when confronted with good Java coding practices. As Java technologies have been broadly used for over two decades now, cloud adoption puts extra challenges on the table, as the growing need for cost reduction through stack modernization. In this sense, the reader can learn about application modernization strategies and find in-depth knowledge about how enterprise data integration patterns and event-driven architectures enable smooth modernization processes with low-to-zero impact on the existing legacy stack.
The reader's next architectural decision-making can be solid and backed by a thorough explanation of data storage options and their respective recommended usage scenarios, covering technologies like SQL, NoSQL, and NewSQL.
If, at this point, you understand the reasons why that careful handling of data storage is crucial for a system and architecture and believe it has a direct impact on the whole organization to the point of having such added value that businesses strive against their competitors by adopting data-centric strategies, then, this book is for you. Get ready to join us in this exciting journey of exploring data, its mysteries, and its treasures in a cloud-driven era.
What you will learn
- How data storage emerged, evolved, and unseen challenges transparently covered by such solutions.
- Foundation knowledge of data integration in Java services and what happens under the covers of frameworks.
- Understand the data design patterns to apply to your projects to create a more readable and maintainable design system.
- Understand the impact of design patterns on the program's performance.
Who This Book Is For
We target more experienced developers, engineers, and software architects who are mostly focused in Java solutions.
Table of Contents
- Data Storage challenges
- Distilling the Multiple Database Flavors
- Data storage challenges in the cloud
- Sketching architecture strategies
- Design patterns for data management
- DTOs and the cloud-native services relation
- Understanding Java Mapping
- Frameworks impacts on good practices
- A bird's-eye view of Jakarta EE and MicroProfile
- Enhancing the integration between JPA and relational databases
- NoSQL in Java demystified
- The missing guide for JOOQ adoption
- Ultra-fast in-memory persistence with Microstream
- Persistence practices and strategies
- Challenges and anti-patterns of distributed systems
- Containers, cloud services and data storages
- Modernizing tech stacks with enterprise integration patterns and event sourcing
- Final considerations on persistence in modern Java solutions