I created an email campaign for a website through Amazon SAS. It is encoded in C #.
Each email takes 3.3 seconds to send via the Amazon SAS API. This means that using a single-threaded application, I can only send 3 letters per second.
I implemented a manufacturer / consumer application, a multi-threaded application with 1 manufacturer, to request email settings for each client, and 25 consumers pulled out of the queue and sent emails.
My multi-threaded application sends 12 emails per second (four times increase). I would expect a larger increase in speed from an application with 25 threads.
My question is: How can I speed up sending a mail program on a single processor machine? ? Can my profit seem reasonable or is it more related to my speed due to coding than to my inability to quickly process mroe mail?
Thanks in advance!
UPDATE: If others are facing the same problem ... connecting to AWS to send email takes a long time. The following topic on the AWS Developer forums provides some insight (you may need to scroll down to get more helpful posts).
https://forums.aws.amazon.com/thread.jspa?threadID=78737
performance multithreading c # amazon-web-services producer-consumer
Rebecca
source share