Spring Boot 从AWS SES发送电子邮件在Sping Boot 中速度较慢,发送一封电子邮件需要大约300毫秒

dkqlctbz  于 2022-11-05  发布在  Spring
关注(0)|答案(1)|浏览(369)

AWS SES在Sping Boot 中是否很慢?我使用了Python,发送一封邮件需要0. 3 ms,而Spring Boot发送一封邮件需要300 ms。
下面是python代码:

import boto3
from botocore.exceptions import ClientError
import time

# Replace sender@example.com with your "From" address.

# This address must be verified with Amazon SES.

SENDER = " <info@researchkernel.org>"

# Replace recipient@example.com with a "To" address. If your account

# is still in the sandbox, this address must be verified.

RECIPIENT = "prakritidevverma@gmail.com"

# Specify a configuration set. If you do not want to use a configuration

# set, comment the following variable, and the

# ConfigurationSetName=CONFIGURATION_SET argument below.

CONFIGURATION_SET = "ConfigSet"

# If necessary, replace us-west-2 with the AWS Region you're using for Amazon SES.

AWS_REGION = "us-west-2"

# The subject line for the email.

SUBJECT = "iimjobs.com - Your Personalized Jobfeed"

# The email body for recipients with non-HTML email clients.

BODY_TEXT = """"""

# The HTML body of the email.

BODY_HTML = """<html>
<head></head>
<body>
  <h1>Amazon SES Test (SDK for Python)</h1>
  <p>This email was sent with
    <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the
    <a href='https://aws.amazon.com/sdk-for-python/'>
      AWS SDK for Python (Boto)</a>.</p>
      <p>Delhi is a crowded city. There are very few rich people who travel by their own vehicles. The majority of the people cannot afford to hire a taxi or a three-wheeler. They have to depend on D.T.C. buses, which are the cheapest mode of conveyance. D.T.C. buses are like blood capillaries of our body spreading all over in Delhi. One day I had to go to railway station to receive my uncle. I had to reach there by 9.30 a.m. knowing the irregularity of D.T.C. bus service; I left my home at 7.30 a.m. and reached the bus stop. There was a long queue. Everybody was waiting for the bus but the buses were passing one after another without stopping. I kept waiting for about an hour. I was feeling very restless and I was afraid that I might not be able to reach the station in time. It was 8.45. Luckily a bus stopped just in front of me. It was overcrowded but somehow I managed to get into the bus. Some passengers were hanging on the footboard, so there was no question of getting a seat. It was very uncomfortable. We were feeling suffocated. All of a sudden, an old man declared that his pocket had been picked. He accused the man standing beside him. The young man took a knife out of his pocket and waved it in the air. No body dared to catch him. I thanked God when the bus stopped at the railway station. I reached there just in time.</P>
      <p>Delhi is a crowded city. There are very few rich people who travel by their own vehicles. The majority of the people cannot afford to hire a taxi or a three-wheeler. They have to depend on D.T.C. buses, which are the cheapest mode of conveyance. D.T.C. buses are like blood capillaries of our body spreading all over in Delhi. One day I had to go to railway station to receive my uncle. I had to reach there by 9.30 a.m. knowing the irregularity of D.T.C. bus service; I left my home at 7.30 a.m. and reached the bus stop. There was a long queue. Everybody was waiting for the bus but the buses were passing one after another without stopping. I kept waiting for about an hour. I was feeling very restless and I was afraid that I might not be able to reach the station in time. It was 8.45. Luckily a bus stopped just in front of me. It was overcrowded but somehow I managed to get into the bus. Some passengers were hanging on the footboard, so there was no question of getting a seat. It was very uncomfortable. We were feeling suffocated. All of a sudden, an old man declared that his pocket had been picked. He accused the man standing beside him. The young man took a knife out of his pocket and waved it in the air. No body dared to catch him. I thanked God when the bus stopped at the railway station. I reached there just in time.</p>
</body>
</html>
            """

# The character encoding for the email.

CHARSET = "UTF-8"

# Create a new SES resource and specify a region.

client = boto3.client('ses',region_name=AWS_REGION)
start = time.time()

# Try to send the email.

try:
    #Provide the contents of the email.
    response = client.send_email(
        Destination={
            'ToAddresses': [
                RECIPIENT,
            ],
        },
        Message={
            'Body': {
                'Html': {
                    'Charset': CHARSET,
                    'Data': BODY_HTML,
                },
                'Text': {
                    'Charset': CHARSET,
                    'Data': BODY_TEXT,
                },
            },
            'Subject': {
                'Charset': CHARSET,
                'Data': SUBJECT,
            },
        },
        Source=SENDER,
        # If you are not using a configuration set, comment or delete the
        # following line
        # ConfigurationSetName=CONFIGURATION_SET,
    )

# Display an error if something goes wrong.

except ClientError as e:
    print(e.response['Error']['Message'])
else:
    print("Email sent! Message ID:"),
    print(response['MessageId'])
end = time.time()
print("time taken : SES : "+ end-start)

我使用的是https://github.com/thombergs/code-examples/tree/master/aws/springcloudses
用于发送电子邮件。
我不知道为什么,有人能帮忙吗?

6ioyuze2

6ioyuze21#

要在Sping Boot 应用程序中使用SES发送电子邮件,请使用SES Java V2API(您的评论中的链接使用V1)。
具体使用SesClient client。这是SES的V2服务客户端。
请务必查看新的代码目录,以获取最新的代码示例:
https://docs.aws.amazon.com/code-library/latest/ug/what-is-code-library.html
您将在本指南中找到许多AWS服务特定的代码示例(采用所有SDK支持的编程语言)沿着许多AWS Dev教程,例如本教程,它向您展示了如何构建使用多个服务(包括SES)的Sping Boot 应用。
Detect objects in images with Amazon Rekognition using an AWS SDK PDF
正如上面的评论所述--总是看官方的AWS文档而不是第三方。

相关问题