Если вы еще не делаете что-то подобное, убедитесь, что вы повторно используете / перерабатываете существующие каналы с некоторым кодом, подобным этому, в базовом классе для ваших услуг:
Protected ReadOnly Property MyService() As MyServiceClient
Get
' Initialise My Service and return it
If m_objMyService Is Nothing OrElse m_objMyService.State = CommunicationState.Closed OrElse m_objMyService.State = CommunicationState.Faulted Then
m_objMyService = MethodToGetServiceClient(Of MyServiceClient, MyService)()
End If
Return m_objMyService
End Get
End Property