Mi proyecto WCF utiliza MtoM y streaming de, y establecer el MaxBytesPerRead a 32K (el cliente y el servidor), pero cuando corro¡Flujos de WCF en trozos de 4K!
read = fs.read(buffer, 0, buffer.length)
que no me permite leer más de 4096 bytes (4k) a la vez (el buffer 32K no se llena-está acolchado con ceros)
¿Hay alguna manera de que pueda transmitir mi archivo de varios megabytes en fragmentos mayores a 4K (por favor diga sí) ???
¿Simplemente cree que tiene un problema de rendimiento o realmente lo midió? Esa lectura() devuelve solo 4K en el momento no dice nada sobre el tamaño del paquete en la red, el retraso o el rendimiento. Hay muchos búferes y capas entre su lectura() y la red. – Codo
@Codo: De acuerdo, pero sería bueno saber por qué los búferes de 32K no funcionan ... 4K parece realmente pequeño. –
Esto puede proporcionar algo de información: http://stackoverflow.com/questions/451376/file-download-through-wcf-slower-than-through-iis –