AWS Polly python synthesize_speech delayed response

0

I'm not sure if I'm doing things incorrectly, but sometimes it takes almost precisely a minute (60-61 secs) to get a response back. Most of the time it is < 1 sec, but sometimes it gets to 60.x secs - never longer, never shorter, always around that 1 minute mark. Some background:
I'm using it in a Django application, and in a helper file, towards the top I initiate things:

session = Session(
        region_name="us-east-1",
        aws_access_key_id=...
        aws_secret_access_key=...
        )
polly = session.client("polly")

Then down in a function (in the helper file):

def some_function():
    time1 = time.time()
    response = polly.synthesize_speech(
                            Text=<....>,
                            OutputFormat="mp3",
                            VoiceId="Justin",
                            TextType="ssml"
                        )
    time2 = time.time()

Then in a views file (since this is used in Django), it will call on "some_function" when requests arrive.

As mentioned, time2 - time1 is usually < 1 sec, but from time to time, it gets to 60-61 secs... I initially thought it was some sort of rate limiting, but I looked up the limits for AWS polly and it seems like I am far away from any throttling limits. I'm out of ideas, so any inspiration is much welcome! Thanks in advance!

Also, not sure if relevant, but the Django app is hosted on Azure - would that cause any random in occurrence, but consistent in duration delays?

mfxuus
已提問 4 年前檢視次數 426 次
3 個答案
0
已接受的答案

Hi Mfxuus,

Thank you for reaching out to us. It looks like the problem you are facing is related to the default boto3 timeout setting. You can change this setting and test if it helps with your issue.

Here is a guide on how to change timeout setting:
https://aws.amazon.com/premiumsupport/knowledge-center/lambda-function-retry-timeout-sdk/

Please reach out to us, in case this does not solve your issue.

Thanks,
Fatih

已回答 4 年前
0

Thank you! That does sound consistent with what we're experiencing. Will set a custom timeout and see if that fixes things!

mfxuus
已回答 4 年前
0

Hi Fatih,

Following up on this issue - I think it is indeed the timeout setting, and more specifically, it is the "read_timeout" causing the issue. Do you by any chance know if this "read_timeout" refers to the total time spent reading the response, or simply "time til I start reading some response"? Just trying to figure out if setting it to say 5 secs would break anything in my app.

Thanks again!

Michael

mfxuus
已回答 4 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南