Illustration strms006.gif shows the following mechanisms in a single Oracle database:
A capture process capturing changes made to database objects from the redo log and enqueuing these changes into a queue as LCRs
An apply process dequeuing LCRs and messages from the same queue used by the capture process and either applying changes directly or passing the messages to an apply handler. The apply handlers include a message handler procedure to process user messages, a DML handler procedure to process certain DML LCRs (row LCRs), and a DDL handler procedure to process DDL LCRs
User application A producing LCRs or messages and enqueuing them into the queue
User application B dequeuing LCRs or messages from the queue and consuming them