Chicos/chicas Estamos teniendo un rendimiento terrible con nuestro sitio web que utiliza WCF como la aplicación más tarde. Estamos utilizando seguridad y certificados a nivel de mensaje (autenticación mutua). Estamos almacenamiento en caché de la fábrica de canal en el objeto de aplicación:Terrible rendimiento con WCF y certificados (autenticación mutua)
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 fijado EstablishSecurityContext = true.
No estamos deseando almacenar en caché el proxy debido a tener que meternos con un estado proxy fallado. 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 montón de comandos de SCT en lugar de solo para la primera llamada, como era de esperar. ¿Alguien sabe qué está pasando? ¿Estamos almacenando en caché la fábrica de canales de forma incorrecta?
gracias, NCAGE
Por favor, consulte este artículo que podría ayudarlo. http://webservices20.blogspot.com/2009/01/wcf-performance-gearing-up-your-service.html – Verybiztalker