Polling: the consumer periodically asks "anything new?" on a schedule (every minute scrape an API, SELECT where updated_at > ?).
Push: the source sends data when it changes (webhooks, CDC to Kafka, agent shipping logs).
Polling: consumer --tick--> source --maybe data--> consumer Push: source --event--> bus/consumer immediately
Trade-offs
- Polling: simple, easy firewalls; wasteful empty polls; higher latency bounded by interval
- Push: fresher; needs durable delivery, retries, auth, and backpressure design
Hybrid
Many stacks push into Kafka, then consumers poll Kafka (push to log, pull from log).
Interview tip: Explain latency vs complexity, then note Kafka consumers still *poll* the log even in event-driven designs.