Hallo zusammen,
ich habe ein Problem beim Speichern eines EmailAttachments auf einem NetzwerkShare.
Codeschnipsel:
in = InputStream
out = OutputStream
Ich lese das Attachment als Stream und schreibe es dann direkt in die Freigabe auf dem NetzwerkShare in einem entferneten Netzwerk.
Die Dateien sind ca. 20KB gross.
Schreibe ich die Datei lokal in einen Ordner ist der Vorgang binnen 1 Sekunde erledigt.
Der gleiche Vorgang dauert aber auf der Netzwerkressource 8 Minuten.
Ich habe mir das Ganze im Taskmanager angesehen.
Netzwerklast: 0,01%
CPU-Last: 7%
Hat einer eine Idee, warum das Schreiben auf einen UNC-Share so extrem langsam von statten geht?
Vielen Dank
FenchelT
ich habe ein Problem beim Speichern eines EmailAttachments auf einem NetzwerkShare.
Codeschnipsel:
in = InputStream
out = OutputStream
Java:
in = null;
Multipart mp = (Multipart) part.getContent();
for (int i = 0; i < mp.getCount(); i++)
{
BodyPart bp = mp.getBodyPart(i);
if (!Part.ATTACHMENT.equalsIgnoreCase(bp.getDisposition()))
{
continue; // Mache nix, da kein Attachment
}
in = bp.getInputStream();
out = new FileOutputStream(new File(ziel));
//outLokal = new FileOutputStream(new File("C:\\temp\\lokal.zip"));
int k;
System.out.println("Start while Schleife " + DateFormat.getTimeInstance(DateFormat.LONG).format(new Date()));
while ((k = in.read()) != -1)
{
System.out.println("DEBUG => Streamwert: " + k);
out.write(k);
}
System.out.println("ENDE while Schleife " + DateFormat.getTimeInstance(DateFormat.LONG).format(new Date()));
// Streams schliessen
in.close();
out.close();
retVal = true;
Ich lese das Attachment als Stream und schreibe es dann direkt in die Freigabe auf dem NetzwerkShare in einem entferneten Netzwerk.
Die Dateien sind ca. 20KB gross.
Schreibe ich die Datei lokal in einen Ordner ist der Vorgang binnen 1 Sekunde erledigt.
Der gleiche Vorgang dauert aber auf der Netzwerkressource 8 Minuten.
Ich habe mir das Ganze im Taskmanager angesehen.
Netzwerklast: 0,01%
CPU-Last: 7%
Hat einer eine Idee, warum das Schreiben auf einen UNC-Share so extrem langsam von statten geht?
Vielen Dank
FenchelT