Go to file
Juan Ferrer 5e01721f75
gitea/mycdc/pipeline/head This commit looks good Details
fix: refs #4409 Columns changed detection fix
2024-05-08 14:18:45 +02:00
assets fix: refs #4409 Dockerfile COPY dir fix 2024-05-07 08:31:53 +02:00
config fix: refs #4409 Columns changed detection fix 2024-05-08 14:18:45 +02:00
lib fix: refs #4409 AMQ messages ACK fixes 2024-05-07 13:04:07 +02:00
queues fix: refs #4409 Code fixes 2024-04-17 17:01:13 +02:00
.gitignore feat: refs #4409 Code refactor, fixes, auto bind 2024-04-08 15:17:06 +02:00
Jenkinsfile ci: refs #4409 Jenkinsfile fixes 2024-04-04 15:04:12 +02:00
LICENSE build: refs #4409 Deployment files added 2024-04-04 11:33:29 +02:00
README.md fix: refs #4409 Code fixes 2024-04-17 17:01:13 +02:00
consumer.js feat: refs #4409 Global refactor, queue polling improved 2024-04-17 11:40:44 +02:00
docker-compose.yml feat: refs #4409 Global refactor, queue polling improved 2024-04-17 11:40:44 +02:00
index.js Multi-queue alpha, yml config, code clean, refactor 2022-10-24 18:11:25 +02:00
mycdc.js fix: refs #4409 Columns changed detection fix 2024-05-08 14:18:45 +02:00
package-lock.json feat: refs #4409 Global refactor, queue polling improved 2024-04-17 11:40:44 +02:00
package.json fix: refs #4409 Columns changed detection fix 2024-05-08 14:18:45 +02:00

README.md

MyCDC - MySQL change data capture

Application to run asynchronous operations based on DB changes. It is divided into three services:

  • RabbitMQ: Service that allows the exchange and queuing of messages between applications.
  • Producer: Reads and filters changes from the DB binary log and adds the relevant messages to each RabbitMQ queue.
  • Consumer: Obtains the elements from the queues and performs the necessary operations asynchronously.

Environment setup

Because a bug with MariaDB wich it's fix is pending to be merged into main project branch, a zongji fork must be cloned into project root directory. More info at https://github.com/nevill/zongji/issues/143

git clone https://github.com/juan-ferrer-toribio/zongji.git
cd zongji
git checkout fix-143

Apply zongji.sql script into DB.

Copy producer.json and consumer.json from config directory to producer.local.json and consumer.local.json and place your local configuration there.

Install dependencies.

npm install

Run application

Start rabbit.

npm run rabbit

Start producer and consumer.

npm start
npm run consumer

Built With