You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将ServiceBusClient切换为HTTP而非AMQP以降低开发成本?

解决Azure Service Bus开发环境Brokered Connections费用问题

1. 强制ServiceBusClient使用REST(HTTP)传输协议

Azure.Messaging.ServiceBus SDK支持通过配置指定HTTP传输类型,这种方式基于短连接收发消息,只要不设置长期监听超时,就不会被计入Brokered Connections。

代码示例:

var clientOptions = new ServiceBusClientOptions
{
    TransportType = TransportType.Rest
};

var serviceBusClient = new ServiceBusClient(connectionString, clientOptions);

注意:REST传输性能远低于AMQP,仅适合开发调试场景,生产环境请勿使用。

2. 改用Service Bus免费层

为开发环境单独创建免费层的Service Bus命名空间,免费层每月包含1000次Brokered Connections额度,完全覆盖开发者频繁启停调试的需求,且超出额度后不会产生额外费用。

3. 本地运行Service Bus模拟器

使用微软官方提供的Azure Service Bus本地模拟器,开发调试时直接连接本地实例,完全不依赖云端资源,不会产生任何云端费用。模拟器API与云端Service Bus完全兼容,无需修改代码即可切换。

4. 主动管理连接生命周期

调试结束时,主动调用DisposeAsync()释放ServiceBusClient、ServiceBusProcessor或ServiceBusReceiver实例,确保连接被立即关闭,避免因连接闲置超时导致的额外计数。

代码示例:

// 调试结束时主动释放资源
await processor.DisposeAsync();
await client.DisposeAsync();

内容的提问来源于stack exchange,提问作者Vaccano

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 06:34:58