Rendimiento terrible con WCF y certificados (autenticación mutua)
Chicos / chicas tenemos un rendimiento terrible con nuestro sitio web que usa WCF como la aplicación más adelante. Estamos utilizando seguridad y certificados de nivel de mensaje (autenticación mutua). Estamos almacenando en caché la fábrica de canales en el objeto de la aplicación:
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
En cada página que necesitamos datos hacemos lo siguiente:
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
También he establecido establecersecuritycontext = true.
No queremos almacenar en caché el proxy porque tenemos que meternos en un estado de proxy con fallas. Por lo que sé, el almacenamiento en caché de la pila de canales debería ser suficiente de todos modos. Cuando enciendo el seguimiento, veo un grupo de comandos SCT en lugar de solo para la primera llamada, como es de esperar. ¿Alguien sabe qué está pasando? ¿Estamos almacenando incorrectamente la fábrica de canales?
gracias ncage