Performance of BufferedOutputStream.write() 2005-01-07 - By Jean-Christian Imbeault
Back Frans Verhoef wrote:
> > I did a little test myself, transferring a file (about 300kb) from one harddisk to another using both methods. Method1 first loading the whole file, before streaming it to the new location, and method2 streams to the new location while streaming in from the file. > > Method2 finishes the transfer consistently in 12-14 micro seconds. In about half the times method 1 also finishes in 12-14 micro seconds. However, the other times it can take as long as 90 microseconds. > > Probably the reason behind it is that due to the big amounts of data you keep on loading into the virtual machine, the garbage collector needs more time to clear the heap. > > Maybe you could try to make a little test servlet to test the two different methods in a servlet environment.
Thanks for the test! That was very nice of you.
I was just trying to implement a similar test when I talked to the original architect and got the following response from him.
The file cannot be read in the servlet that streams to the client. That servlet is part of the presentation layer, the servlet that reads the file is part of the business layer. The two layers must be kept separate.
Furthermore if we ever use the application in a distributed fashion, it is possible that the presentation layer will not have access to the file itself ...
I kind of understand the architecture reasons behind the decision ... but boy does it ever make for a performance hit ...
Jc Note: This e-mail contains privileged and confidential information and is for the sole use of the intended recipient(s). If you are not an intended recipient, you are hereby kindly requested to refrain from printing, copying, or distributing the information contained herein. Furthermore, any other use of the information contained herein is strictly prohibited. If you have received this transmission in error, please kindly notify the sender immediately and destroy all copies of the original message.
=========================================================================== To unsubscribe, send email to listserv@(protected) and include in the body of the message "signoff J2EE-INTEREST". For general help, send email to listserv@(protected) and include in the body of the message "help".
|
|