appleboy / appleboy/gorush

Question: What is a recommended way of keeping the push queue under optimal load?

Open
#144 3 comments 0 reactions 0 assignees View on GitHub
question
Dominant language
Go
Stars
8.8k
Forks
887
PR merge metrics
No merged PRs in 30d

Description

Can you please describe what would be a reliable way of sending millions of notifications, so I never exceed any internal queue limits or server resources. Am I supposed to monitor api/stat/app and make sure to not add any new pushes if `queue_usage` is near `queue_usage`?

I tried setting config `queue_num=1` and `worker_num=1` and still send 1000 notifications in a loop (I even added 1 sec sleep inside `PushToIOS()`) while `queue_usage` was full. How to make sure that I keep some healthy amount of pushes in a queue without it starting throwing errors that queue is exhausted or overloading the server?

Thanks.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the api/stat/app endpoint and the queue_num, worker_num, and PushToIOS behavior described in the report. Trace how queue_usage is reported and where queue-exhaustion errors are produced, then document a reliable operating procedure for sending large notification batches and define the expected queue and resource limits.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.