Hallo %,
ich schraube gerade an einem CMS herum welches auch große Dateien
(> 600MB) verwalten können muß. I.e. Admin lädt hoch, User laden runter.
Um Speicherproblemen aus dem Weg zu gehen habe ich im Tomkatz folgendes
konfiguriert:
-Xmx700m
-Xms400m
Uploads funktionieren, Downloads merkwürdigesweise nicht. Ich habe testweise
ein File von 680 und eines von 370 MB ins System hochgeladen. Beides funktioniert.
(die Dateien werden im Dateisystem gespeichert)
Wenn ich nun allerdings versuche das 370MB File herzunterzuladen kommt es zu einer
heap exception. Ich verstehe nicht warum der upload funktioniert, der download
allerdings nicht. Hier ist was ich mache:
Wenn ich's richtig sehe sollte mich schon der BufferStream vor Speicherproblemen
schützen, oder?
Bin für jeden Tip dankbar, da mir die Ideen ausgehen woran es liegen könnte
Gruß und TIA
kb22
ich schraube gerade an einem CMS herum welches auch große Dateien
(> 600MB) verwalten können muß. I.e. Admin lädt hoch, User laden runter.
Um Speicherproblemen aus dem Weg zu gehen habe ich im Tomkatz folgendes
konfiguriert:
-Xmx700m
-Xms400m
Uploads funktionieren, Downloads merkwürdigesweise nicht. Ich habe testweise
ein File von 680 und eines von 370 MB ins System hochgeladen. Beides funktioniert.
(die Dateien werden im Dateisystem gespeichert)
Wenn ich nun allerdings versuche das 370MB File herzunterzuladen kommt es zu einer
heap exception. Ich verstehe nicht warum der upload funktioniert, der download
allerdings nicht. Hier ist was ich mache:
Java:
byte[] byt = new byte[1024*1024*2];
response.setHeader("Content-Disposition", "attachment;filename=\"" + fileName + "\"");
FileInputStream fis = null;
OutputStream os = null;
fis = new FileInputStream(new File(filePath));
os = response.getOutputStream();
BufferedInputStream buffRead = new BufferedInputStream(fis);
while((read = buffRead.read(byt))>0)
{
os.write(byt,0,read);
os.flush();
}
buffRead.close();
os.close();
Wenn ich's richtig sehe sollte mich schon der BufferStream vor Speicherproblemen
schützen, oder?
Bin für jeden Tip dankbar, da mir die Ideen ausgehen woran es liegen könnte
Gruß und TIA
kb22