Miniservices provide a valuable middle ground between monoliths and microservices. As Nicholas Keune explains in this report, miniservices are suited for application landscapes involving data-intensive workloads that span monoliths and microservices or cross the traditional boundaries of a service context. Drawn from the work of many development teams, the report gives a model and language to data-centric system attributes so that they can be considered more proactively in the design discussion.
Combining monolithic corporate or third-party systems with microservices requires a design pattern to balance both local and global aspects of the data lifecycle. The approach advocated here, called a data discourse, is both flexible and bounded by guiding principles that help bring data discussions into early architectural conversations.
Using real-world experiences and use cases, the report focuses on three of the most commonly observed attributes in a miniservice: consistency, transactionality, and proximity. The examples illustrate how design discussions about data discourses lead to miniservice creation, and how miniservices help solve otherwise difficult architectural challenges.
With this report, you’ll learn:
- What miniservices are and how they offer solutions to challenges
- What data discourses are and how to use them
- How data discourses and miniservices help shift design discussions around data
Table of contents
What Are Miniservices?
- Designing Modern Architectures for Use with Corporate Systems
- Miniservices in the Design Discussion
- Approaching Data Like We Do Processing
- Principles of Miniservice Attributes
- Examples of Miniservice Attributes
- Consistency as an Attribute
- Transactionality as an Attribute
- Proximity as an Attribute
- Data Discourses: Choosing Attributes
- Title: What Are Miniservices?
- Release date: September 2019
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781492073499
You might also like
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
Fundamentals of Software Architecture
Salary surveys worldwide regularly place software architect in the top 10 best jobs, yet no real …
Building Microservices, 2nd Edition
Distributed systems have become more fine-grained as organizations shift from code-heavy monolithic applications to smaller, self-contained …
Software Engineering at Google
Today, software engineers need to know not only how to program effectively but also how to …