I have been working on a Bulk Sms product and off-late we have been having challenges on the number of sms sent at a time. We have tried several ways to optimize both we have not yet reached a good solution.
Our provider provides provides an endpoint that sends a single SMS at once. We have a function that sends an SMS to that endpoint. Now lets say I have a user who has 10K contacts in a group, and we want to send SMS to that endpoint with the best time as possible.
Is there anyway i can make my code execute the function to concurrently while generating the SMS to my db table?
For example, lets assume the send sms function as sendSms($phone, $message)
Then lets generate the SMS from a group of 10K contacts:
foreach($group->contacts as $contact) {
//from a controller
$this->dispatch(new SendSmsJob($contact->phone, $contact->message))->onQueue('high');
}
Clearly the SMS will be created and queued lets say redis, but they are sent sequentially. Is it possible to do a concurrency? Is AWS lambda a solution? or Lavavel Vapor?
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire