Azure功能 - 在没有输出结果的情况下处理的消息会发生什么?

时间:2017-03-14 14:52:13

标签: javascript azure azure-functions azure-eventhub azure-iot-hub

我已编写Azure功能并将其连接到IoT Hub的消息传递端点,以触发所有传入消息的功能。该功能的目的是解压缩先前在蜂窝传输之前使用GZIP进行压缩的消息。

目前,我们将设备传输到云端未压缩,我们正在寻求增加压缩以降低传输成本。我们目前还在使用Stream Analytics来分析流中的消息,并将消息输出到各种集线器,blob,表格等。因此,一旦消息被压缩,我们将无法再使用Stream Analytics基于消息值的方向。

我已经开发了我的功能来解压缩消息并将结果输出到事件中心以进行进一步处理。

我的问题是:如果我不输出内容,修改后的消息会在队列中生效,直到被另一个应用程序摄取为止?或者,如果我不输出结果,我的更改会消失。如果未压缩的消息能够存在队列中,那么我仍然可以使用Stream Analytics,因为我目前已将其配置为运行。

1 个答案:

答案 0 :(得分:2)

似乎你在询问Event Hub(你正在推送未压缩消息的那个)是否会在不立即消费的情况下保留消息。答案是肯定的。 Event Hub具有可在Azure门户中配置的保留策略。此外,您可以查看Event Hub archiving功能,该功能允许自动将消息推送到blob存储。在您的未压缩邮件进入事件中心后,您仍可以像以前一样使用Stream Analytics进行处理。

您可能还想查看Azure IoT Hub routing,它使用消息属性将它们发送到不同的自定义点,而不必破解消息的正文。这将允许您在不必解压缩消息的情况下进行路由(如果您的方案允许使用消息属性)