¿Hay alguna manera (sin almacenar en búfer todo el Inputstream) de tomar HttpServletRequest de un Servlet Java y escribirlo en un archivo usando todo NIO? ¿Vale la pena intentarlo? ¿Será una lectura más rápida de un flujo normal de java.io y se escribirá en un canal de java.nio o los dos realmente necesitan ser NIO puro para ver un beneficio? Gracias.Servlet Java NIO en el archivo
EDIT:
Así que acabo de hacer una referencia rápida y sucia, la lectura de un archivo de un disco y grabar en un disco diferente (por lo que estoy realmente probar el código y no el disco).
Averages:
InputStream -> OutputStream : 321 ms.
FileChannel -> FileChannel : 3 ms.
InputStream -> FileChannel : 600 ms.
En realidad obtuve un rendimiento peor al tratar de usar un híbrido java.io -> java.nio. El nio-> nio fue más rápido por MUCHO, pero estoy atrapado con el Servlet InputStream.
Esto es como la sensación que tuve, excepto que FileChannel puede usar DMA para escribir la secuencia en el disco, lo que podría mejorar el rendimiento. – Gandalf