DBZ-1478 Outbox doc updates; adding visual
This commit is contained in:
parent
1ec377224a
commit
e44e1f271a
@ -1,5 +1,5 @@
|
||||
name: reference
|
||||
title: Debezium Documentation
|
||||
version: '1.1'
|
||||
version: 'master'
|
||||
nav:
|
||||
- modules/ROOT/nav.adoc
|
BIN
documentation/modules/ROOT/assets/images/outbox_pattern.png
Normal file
BIN
documentation/modules/ROOT/assets/images/outbox_pattern.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 500 KiB |
@ -10,7 +10,6 @@
|
||||
** xref:configuration/event-flattening.adoc[New Record State Extraction]
|
||||
** xref:configuration/mongodb-event-flattening.adoc[MongoDB New Document State Extraction]
|
||||
** xref:configuration/outbox-event-router.adoc[Outbox Event Router]
|
||||
** xref:configuration/serdes.adoc[Change Event SerDes]
|
||||
* Connectors
|
||||
** xref:connectors/index.adoc[Overview]
|
||||
** xref:connectors/mysql.adoc[MySQL]
|
||||
@ -24,10 +23,10 @@
|
||||
** xref:connectors/sqlserver.adoc[SQL Server]
|
||||
** xref:connectors/cassandra.adoc[Cassandra]
|
||||
* Integrations
|
||||
** xref:configuration/serdes.adoc[Change Event SerDes]
|
||||
** xref:integrations/outbox.adoc[Outbox Quarkus Extension]
|
||||
* Operations
|
||||
** xref:operations/logging.adoc[Logging]
|
||||
** xref:operations/monitoring.adoc[Monitoring]
|
||||
** xref:operations/openshift.adoc[Running on Openshift]
|
||||
** xref:operations/amq-streams.adoc[Running with AMQ Streams]
|
||||
** xref:operations/embedded.adoc[Embedding Debezium]
|
||||
|
@ -5,15 +5,25 @@ include::../_attributes.adoc[]
|
||||
:linkattrs:
|
||||
:icons: font
|
||||
:source-highlighter: highlight.js
|
||||
:imagesdir: /assets/images
|
||||
|
||||
toc::[]
|
||||
|
||||
[NOTE]
|
||||
====
|
||||
This feature is currently in incubating state, i.e. exact semantics, configuration options etc. may change in future revisions, based on the feedback we receive. Please let us know if you encounter any problems will using this extension.
|
||||
====
|
||||
|
||||
== Overview
|
||||
|
||||
This extension is inspired by the xref::configuration/outbox-event-router.adoc[Outbox Event Router] single message transformation (SMT).
|
||||
As discussed in the blog post link:/blog/2019/02/19/reliable-microservices-data-exchange-with-the-outbox-pattern/[Reliable Microservices Data Exchange with the Outbox Pattern], microservices often need to exchange information with one another and an excellent way to deal with that is using the Outbox pattern combined with Debezium's Outbox Event Router SMT.
|
||||
|
||||
The Outbox extension's goal is to provide a Quarkus application with a reusable, highly configurable component that facilitates the use of the Outbox pattern paired with Debezium's CDC connector pipeline to reliably and asynchronously share data with any consumer of said data.
|
||||
The following image shows the overall architecture of this pattern:
|
||||
|
||||
image:outbox_pattern.png[Outbox Pattern]
|
||||
|
||||
The Outbox extension's goal is to provide a https://quarkus.io/[Quarkus] application with a reusable, highly configurable component that facilitates the use of the Outbox pattern paired with Debezium's CDC connector pipeline to reliably and asynchronously share data with any consumer of said data.
|
||||
|
||||
== Getting Started
|
||||
|
||||
@ -100,7 +110,7 @@ public class OrderService {
|
||||
}
|
||||
----
|
||||
|
||||
When the application code fires the event by calling `Event#fire`, the Outbox extension will be notified that the event occurred and persists the contents of the event into an outbox event table within the scope of the current transaction.
|
||||
When the application code fires the event by calling `Event#fire()`, the Outbox extension will be notified that the event occurred and persists the contents of the event into an outbox event table within the scope of the current transaction.
|
||||
The Debezium CDC connector in conjunction with the Outbox Event Router will be monitoring this table and will be responsible for relaying that data using CDC events.
|
||||
|
||||
To see a full end-to-end demo, the https://github.com/debezium/debezium-examples/tree/master/outbox[Outbox] example illustrates two Quarkus microservice applications using the outbox pattern to share data between them when orders are placed or cancelled.
|
||||
|
Loading…
Reference in New Issue
Block a user