servidor de Proyectos WCF de baja latencia
-
22-09-2019 - |
Pregunta
¿Cómo lograr una baja latencia del servidor de WCF en el escenario de publicación-suscripción? En concreto, los clientes se suscriben a los datos y recibir actualizaciones, la latencia en cuestión es cambiar entre los datos y el cliente que recibe el cambio? CPU, la memoria, los requisitos de ancho de banda no es importante y puede ser alto.
Conceptos básicos son obvias: la serialización binaria, canalizaciones con nombre, etc. Pero, ¿tiene sentido, por ejemplo, para enviar datos a través de la corriente siempre-conectado? O enviar lotes de cambios como un único mensaje a disminuir la sobrecarga de RPC / cabecera?
Puede haber algunos proyectos con código o las interfaces disponibles para su uso como ejemplo?
Solución
No es una solución completa, pero: Para reducir la latencia asociada con el tamaño de datos y la transferencia de la red acelera podría utilizar búferes de protocolo de Google de comprimir los datos sobre el alambre. proyectos de GitHub es aquí .
Otros consejos
Si se utiliza un canal dúplex, puede hacer que los clientes se conectan al servidor y al hacerlo pasar a otro servicio como llamada de retorno. El servidor utiliza esta devolución de llamada para enviar actualizaciones al cliente a medida que estén disponibles.
He escrito un mecanismo de pub-sub en la empresa utilizando este enfoque y la latencia es casi tan baja como era de esperar posible a través de WCF.
¿Cuál es el rendimiento de su objetivo?
Este artículo MSDN se analizan utilizando un canal duplex WCF.
¿Has mirado en
http://geekswithblogs.net /BVeldhoen/archive/2008/01/26/wcf-latency-test-harness.aspx
Tiene en cuenta diversas fijaciones y tamaños de datos.