Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scale up the callback processing #474

Open
5 tasks
jimleroyer opened this issue Nov 28, 2024 · 0 comments
Open
5 tasks

Scale up the callback processing #474

jimleroyer opened this issue Nov 28, 2024 · 0 comments
Labels
Medium Priority | Priorité moyenne Reliability Task related to reliability. Throughput Will boost our throughput

Comments

@jimleroyer
Copy link
Member

jimleroyer commented Nov 28, 2024

Description

As a user of GCNotify,
I want to know when my email or SMS were sent or delivered in a timely manner when using the API callback feature,
So that I get rapid feedback on the notification's sending and delivery
And react accordingly on success or failure.

WHY are we building?

The callback processing is not scaling up as much as what we can currently send, triggering potential traffic in our callback queue as the celery workers cannot process as fast and introducing delays in communicating callbacks to API users.

WHAT are we building?

Without dictating how we can do this, the what is about scaling up the callback queue and Celery workers with a similar factor to the sending process.

VALUE created by our solution

Better user experience on proper notification status and callbacks.

Acceptance Criteria

  • An increased volume of notifications sending should trigger an appropriate scale of the API callback processing.
  • An increased volume of callback processing should not impede other normal operations handled by Celery workers such as the database saving operations (performed by Celery workers) or the actual sending of the notifications (performed by Celery workers).
  • callbacks queue should not increase after implementing this feature

QA Steps

  • Perform Rollercoaster tests and monitor the processing of callbacks.
  • Performance test ( send 50K emails) doesn't show any additional slowdowns
@jimleroyer jimleroyer added Medium Priority | Priorité moyenne Reliability Task related to reliability. Throughput Will boost our throughput labels Nov 28, 2024
@jimleroyer jimleroyer changed the title Copy of Scale up the delivery receipt processing Scale up the callback processing Nov 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Medium Priority | Priorité moyenne Reliability Task related to reliability. Throughput Will boost our throughput
Projects
None yet
Development

No branches or pull requests

1 participant