Skip to content

Latest commit

 

History

History
73 lines (41 loc) · 2.69 KB

Architecture.md

File metadata and controls

73 lines (41 loc) · 2.69 KB
tags
Architecture
Outbox_Pattern
Inbox_Pattern
C4

Architecture

Outbox Pattern #Outbox_Pattern  - it ensures that a message was sent (e.g. to a queue) successfully at least once. With this pattern, instead of directly publishing a message to the queue, we store it in temporary storage (e.g. database table).

Inbox Pattern #Inbox_Pattern - it is similar to Outbox Pattern. It’s used to handle incoming messages (e.g. from a queue). Accordingly, we have a table in which we’re storing incoming events. Contrary to outbox pattern, we first save the event in the database, then we’re returning ACK to queue

Delivery Guarantees

  • At-most once
  • At-least once
  • Exactly-once

Modelling vs Diagramming

#C4

C4 Model - Getting Started Workshop by IcePanel

The C4 model for visualising software architecture

#Tools

PlantUML

Structurizr

Archi

Other

ShedLock

ShedLock — a Java library that makes sure our scheduled tasks run only once at the same time and is an alternative to Quartz

#TOGAF

The Open Group Architecture Framework -  Enterprise architecture framework for Enterprise Architecture  that provides an approach for designing, planning, implementing, and governing an enterprise information technology architecture. TOGAF is a high-level approach to design. It is typically modeled at four levels: Business, Application, Data, and Technology. It relies heavily on modularization, standardization, and already existing, proven technologies and products.

Links

SOFTWARE ARCHETYPES

Outbox, Inbox patterns and delivery guarantees explained #Outbox_Pattern

ShedLock with Spring