是否需要在使用Azure JS SDK进行服务总线时关闭连接



如果在我的服务器端应用程序中,每次(通常是每次传入HTTP请求一次或几次(,我打开一个新的连接New ServiceBusClient(connStr)并开始使用它,但最后不调用close方法,会有什么不利影响吗?

可能会导致端口或内存耗尽,或者New ServiceBusClient(connStr)将在下面使用某种连接池,所以不用担心?

我认为您需要在最后调用close方法,否则会导致您提到的问题。

同样在官方文档中,它总是这样做。

async function main() {
const sbClient = new ServiceBusClient(connectionString);
.....
} finally {
await sbClient.close();
}
}

不,没有连接池。每次创建ServiceBusClient的实例时,都会创建一个底层连接。最好在客户端不再使用时调用close()

https://github.com/Azure/azure-sdk-for-js/blob/ab566082fd5182903cc2144efbbf3c197c3e6f6a/sdk/servicebus/service-bus/src/serviceBusClient.ts#L78-L96

最新更新