【问题标题】:Are Message Queue Triggers betters than Http Triggers for scalability?消息队列触发器的可伸缩性是否比 Http 触发器更好?
【发布时间】:2019-01-13 23:37:33
【问题描述】:
Azure Functions 的两种触发器是消息队列和 http 触发器。我猜一个区别是,如果没有足够的实例来服务请求,则使用 http 触发器可能会拒绝请求,而使用消息队列,它将检查是否有可用的实例,如果没有,则在尝试之前启动一个实例处理消息。这样理解正确吗?
【问题讨论】:
标签:
azure
architecture
message-queue
azure-functions
serverless-architecture
【解决方案1】:
不完全..!我想你是从here那里得到信息的:
尽可能将大型函数重构为较小的函数集,这些函数集可以协同工作并快速返回响应。例如,webhook 或 HTTP 触发函数可能需要在特定时间限制内的确认响应; webhook 需要立即响应是很常见的。
在一定时限内的确认是关于客户端愿意等待多长时间的响应。因此,如果您要执行一些需要很长时间(大约几分钟)的任务,您可能不会收到信息性响应,因为客户端只会调用连接死机。但是,只要您的函数保持在functionTimeout 限制内(一个消费计划,默认为 5 分钟,最长为 10 分钟),您的函数仍然可以正常执行。