gpt4 book ai didi

azure - Azure Function App 中 SendGrid 绑定(bind)的目的

转载 作者:行者123 更新时间:2023-12-02 23:35:48 27 4
gpt4 key购买 nike

我知道 Azure Function Apps 支持使用开箱即用的 SendGrid 绑定(bind)来使用 SendGrid 发送电子邮件。但我似乎找不到任何有关其架构/优点/目的的信息,而不是直接调用 SendGrid API。

所以目前我有一个 python 函数应用程序和一个用于 HTTP 请求/响应的函数(即 2 个输出绑定(bind)、HTTP 响应和 SendGrid 输出绑定(bind))。如果我宁愿直接通过 python HTTP 请求而不是通过设置输出绑定(bind)来调用 SendGrid API,会有什么缺点吗?

我无法弄清楚幕后发生了什么 - Azure 是否会在发出 HTTP 响应之前等待发出 Sendgrid 请求(来自输出绑定(bind))?情况似乎并非如此,因为如果 sendgrid 部分出现问题,HTTP 请求就会出错。那么使用输出绑定(bind)有时间/网络优势吗?

或者输出绑定(bind)的存在只是为了向 sendgrid 电子邮件提供独立于语言的“客户端”(JSON 字符串),并且 sendgrid 的主客户端可以在 C# 扩展中维护?

我几乎觉得直接调用 Sendgrid 是有利的。如果我尝试在函数中早些时候发送电子邮件,并且该函数被编写为异步,那么它可以在其余部分完成后立即返回(如果 sendgrid 已经返回)。我只是想确保我没有遗漏某些内容,也没有利用输出绑定(bind)提供的某些内容。

最佳答案

任何类型的输出绑定(bind)主要只是为了方便,因为它们将处理建立的客户端和连接,而无需您自己为此设置代码。它们也经过优化,考虑到后端架构,以确保连接被重新使用和正确处理,这样您就不会遇到任何 SNAT 端口耗尽或机器本身连接限制的问题。它们主要是为了方便,但它们在 github 上也是开源的。如果您想更好地了解它们的工作原理,可以花时间浏览它们:
-https://github.com/Azure/azure-webjobs-sdk-extensions/blob/dev/src/WebJobs.Extensions.SendGrid/SendGridAttribute.cs

如果您需要绑定(bind)没有的任何特殊注意事项或配置,那么我会说继续使用您的代码。只需记住考虑函数的连接处理,例如重用连接以及为 http 客户端建立单例或静态全局变量。

关于azure - Azure Function App 中 SendGrid 绑定(bind)的目的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72235154/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com