gpt4 book ai didi

c# - Windows Azure 服务总线计费

转载 作者:行者123 更新时间:2023-11-30 17:07:29 25 4
gpt4 key购买 nike

我对 azure 服务总线计费有疑问。如果我有以下代码,并且很长一段时间(例如 5 小时)没有发送消息。

假设我只有一个订阅,代码如下。在这种情况下,在这 5 小时内,我需要支付什么费用(是发送一次、下载一次,还是为 azure 在后台实现的轮询保持事件收取费用)?

enter code here
var subscriptionClient = SubscriptionClient.CreateFromConnectionString(ConnString, topic, subscriptionName);
while (true)
{

var message = subscriptionClient.Receive();
if (message != null)
{
try
{
message.Complete();


}
catch (Exception)
{
// Indicate a problem, unlock message in subscription
message.Abandon();
}
}
else
{
Console.WriteLine("null message received");
}
Thread.Sleep(25);
}

最佳答案

根据上面的代码,每次 Receive 调用返回时(即使结果为 null),您都会为一条消息付费。 Receive 调用的默认超时为 60 秒,因此如果 5 小时内没有消息,您的代码将每隔一分钟返回一次,然后休眠 25 秒,因此假设每小时您将收取 48 条消息的费用(1 分钟)超时和 25 秒等待)。您可以调用 Receive 的重载需要超时并在 5 小时超时中传递。在此,连接将在返回之前保持 5 小时,因此在此期间不会产生任何费用。

从信封背面的计算来看:单个接收者,以一分钟超时运行,没有等待,并且没有真正的消息,将每分钟收取一条消息费用。整个月的费用还不到 5 美分。请参阅计费计算器 here

关于c# - Windows Azure 服务总线计费,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14480228/

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