Files
upstream-watermill/_examples/basic/2-realtime-feed/README.md
2026-09-15 21:27:46 +05:00

35 lines
1.2 KiB
Markdown

# Realtime Feed
This example features a very busy blogging platform, with thousands of messages showing up on your feed.
There are two separate applications (microservices) integrating over a Kafka topic. The [`producer`](producer/) generates
thousands of "posts" and publishes them to the topic. The [`consumer`](consumer/) subscribes to this topic and
displays each post on the standard output.
The consumer has a throttling middleware enabled, so you have a chance to actually read the posts.
To understand the background and internals, see [getting started guide](https://watermill.io/learn/getting-started/).
## Requirements
To run this example you will need Docker and docker-compose installed. See the [installation guide](https://docs.docker.com/compose/install/).
## Running
```bash
docker-compose up
```
You should see the live feed of posts on the standard output.
## Exercises
1. Peek into the posts counter published on `posts_count` topic.
```
docker-compose exec consumer mill kafka consume -b kafka:9092 -t posts_count
```
2. Add a persistent storage for incoming posts in the consumer service, instead of displaying them.
Consider using the [SQL Publisher](https://github.com/ThreeDotsLabs/watermill-sql).