Desempenho terrível com WCF e certificados (autenticação mútua)
Guys / Gals estamos tendo um desempenho terrível com o nosso site que usa o WCF como o aplicativo mais tarde. Estamos usando segurança e certificados em nível de mensagem (autenticação mútua). Estamos armazenando em cache a fábrica de canais no objeto do aplicativo:
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
Dim loChannelFactor As New ChannelFactory(Of OurReference.IWCFChannel)("ClientEndpoint")
loChannelFactor.Open()
Application.Add("ChannelFactory", loChannelFactor)
End Sub
Em todas as páginas que precisamos de dados, fazemos o seguinte:
Dim Proxy = DirectCast(voWebApp("ChannelFactory"), ChannelFactory(Of OurInfoReference.IOurInfoChannel)).CreateChannel
Proxy.DataCall()
If roWCFService IsNot Nothing Then
CType(roWCFService, ICommunicationObject).Close()
roWCFService = Nothing
End If
Também eu defini establishsecuritycontext = true.
Não estamos querendo armazenar em cache o proxy por causa de ter que mexer com um estado de proxy com falha. Tanto quanto sei cache a pilha de canais deve ser suficiente de qualquer maneira. Quando eu ligo o rastreamento estou vendo um monte de comandos SCT em vez de apenas para a primeira chamada, como eu esperaria. Alguém sabe o que está acontecendo. Estamos fazendo o cache da fábrica de canais incorretamente?
obrigado, Ncage