Skip to content

Reuse Kafka producer singleton for /remember (#34)#54

Open
askmy-stack wants to merge 1 commit into
mainfrom
fix/remember-kafka-producer-singleton
Open

Reuse Kafka producer singleton for /remember (#34)#54
askmy-stack wants to merge 1 commit into
mainfrom
fix/remember-kafka-producer-singleton

Conversation

@askmy-stack

Copy link
Copy Markdown
Owner

Summary

  • Lazy module-level Kafka Producer singleton for POST /remember (double-checked locking) so each request no longer opens a new client
  • Add singleton reuse test + reset helper for test isolation
  • Document shared producer on the README API row

Closes #34

Test plan

  • pytest tests/api/test_remember.py --no-cov (3 passed)
  • CI green on PR
  • Optional: hit POST /remember twice under load and confirm one producer construction in logs/metrics

Made with Cursor

Avoid constructing a new confluent_kafka Producer on every request;
lazy-init a process-wide singleton with double-checked locking.

Co-authored-by: Cursor <cursoragent@cursor.com>
@vercel

vercel Bot commented Jul 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
cortex Ready Ready Preview, Comment Jul 16, 2026 11:55am

@askmy-stack

Copy link
Copy Markdown
Owner Author

Reviewer checklist (@askmy-stack)

Ready for your review — CI is green (test, frontend).

  • Kafka producer is a module-level lazy singleton (not per-request)
  • /remember still publishes correctly under concurrent requests
  • No secrets/credentials in the diff
  • Tests cover reuse / singleton behavior

Fixes #34

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

/remember Kafka producer singleton

1 participant