anchor.diff:  
   Debezium, Quarkus, and the Outbox offer a comprehensive solution which avoids the Dual Writes flaw, and is generally a more practical solution for your average developer team as compared to Event Sourcing solutions.
   
  -[.text-center]
  -image::/images/2020-02-06-event-sourcing-vs-cdc/figure10.png[]
  -[.text-center]
  +[.centered-image.responsive-image]
  +====
  +++++
  +<img src="/images/2020-02-06-event-sourcing-vs-cdc/figure10.png" style="max-width:100%;" class="responsive-image">
  +++++
   *Figure 10. Error Handling of the Outbox Pattern with CQRS*
  +====
   
   === Pros for CDC + Outbox with Debezium
   
  
positive.code: 
  After the transaction completes, the domain events are then picked up by a CDC connector and forwarded to interested consumers using a reliable message broker (see Figure 5). Those consumers may then use the domain events to materialize their own aggregates (see above per Event Sourcing).
  
  [.text-center]
  image::/images/2020-02-06-event-sourcing-vs-cdc/figure05.png[]
  [.text-center]
  *Figure 5. Outbox Pattern implemented with CDC (2 Options)*
  
  The Outbox is also meant to be abstracted from the application as it’s only an ephemeral store of outgoing event data, and not meant to be read or queried. In fact, the domain events residing in the Outbox may be deleted immediately after insertion!
  
  
negative.code: 
  As you can see, CDC is a relatively simple concept with a very narrow scope. It’s simply externalizing the transaction log of the database as a stream of events to interested consumers.
  
  [.centered-image.responsive-image]
  ====
  ++++
  <img src="/images/2020-02-06-event-sourcing-vs-cdc/figure04.png" style="max-width:100%;" class="responsive-image">
  ++++
  *Figure 4. Change Data Capture Implementation Options*
  ====
  
  CDC also gives you flexibility on how events are consumed. Per Figure 4:
  
  