AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Datasnap REST im Apache, Download einer Datei dauert sehr lange
Thema durchsuchen
Ansicht
Themen-Optionen

Datasnap REST im Apache, Download einer Datei dauert sehr lange

Ein Thema von florian89 · begonnen am 18. Jun 2014 · letzter Beitrag vom 20. Jun 2014
Antwort Antwort
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Datasnap REST im Apache, Download einer Datei dauert sehr lange

  Alt 18. Jun 2014, 15:21
Was für eine Zugang zum Internet hast Du? Grundsätzlich ist das ja nicht zu langsam (Upload).
Markus Kinzler
  Mit Zitat antworten Zitat
florian89

Registriert seit: 15. Mai 2014
10 Beiträge
 
Delphi XE5 Architect
 
#2

AW: Datasnap REST im Apache, Download einer Datei dauert sehr lange

  Alt 18. Jun 2014, 15:30
Ca. 50.000 kB Download und 23.000 kB Upload
Wenn ich das ganze lokal teste, sollte das aber innerhalb von Sekunden geschehen oder?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Datasnap REST im Apache, Download einer Datei dauert sehr lange

  Alt 18. Jun 2014, 15:45
Ca. 50.000 kB Download und 23.000 kB Upload
Wenn ich das ganze lokal teste, sollte das aber innerhalb von Sekunden geschehen oder?
50MB oder 50MBit?

In einem Windowsnetz kann man von von ca. 8MB/s bei einem 100MBit-Netz ausgehen, dann sollten die Daten in ein paar Sekunden übertragen sein. Du überträgst Sie aber nicht direkt, sondern wandelst diese zuerst in einen String um. Warum streamst Du diese nicht direkt an den Client?
Markus Kinzler
  Mit Zitat antworten Zitat
florian89

Registriert seit: 15. Mai 2014
10 Beiträge
 
Delphi XE5 Architect
 
#4

AW: Datasnap REST im Apache, Download einer Datei dauert sehr lange

  Alt 18. Jun 2014, 15:50
50 MBit
Ich verscuhe das ganze morgen mal per TStream und werde dann Bescheid geben
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.343 Beiträge
 
Delphi 12 Athens
 
#5

AW: Datasnap REST im Apache, Download einer Datei dauert sehr lange

  Alt 18. Jun 2014, 16:10
Nja, das macht dann so maximal 5-7 MByte/s und dazu dann noch der Weg durchs Netz.
Und was hat die Gegenseite?


Und, du kannst problemlos Exceptions benutzen, denn DataSnap überträgt sie auch.


Ich hab nochmal einen meiner Threads rausgekramt.
http://www.delphipraxis.net/158379-w...ml#post1108637 #17

Bis standardmäßig 29KB lassen sich Streams problemlos übertragen.
Der Übertragungspuffer ist per Default 32 KB groß und alles was größer ist, wird gestückelt.

Stream.Size liefert dabei nur noch -1 und man muß/kann dann nur noch "blind" einlesen, bis zum Stream-Ende.
Im Notfall kann man sich eventuell per Var-Parameter noch die Streamgröße mit übertragen, damit man die Größe prüfen kann. (das hab ich bei uns aber nicht und es läuft dennoch)
function TServerMethods1.GetFile(Filename, Version: string; var StreamSize: Integer): TStream;
procedure TServerMethods1.PutFile(Filename, Version: string; Stream: TStream; StreamSize: Integer);
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (18. Jun 2014 um 16:13 Uhr)
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#6

AW: Datasnap REST im Apache, Download einer Datei dauert sehr lange

  Alt 18. Jun 2014, 22:12
Im Notfall kann man sich eventuell per Var-Parameter noch die Streamgröße mit übertragen, damit man die Größe prüfen kann.
Warum benutzen ständig Leute var wenn sie out meinen?
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.343 Beiträge
 
Delphi 12 Athens
 
#7

AW: Datasnap REST im Apache, Download einer Datei dauert sehr lange

  Alt 18. Jun 2014, 22:42
Weil Viele das Out nicht kennen?

Nja, ich denk oft nicht dran und im Delphi ist es meistens egal (außer daß beim Out hoffentlich der Compiler vorher keine "nicht initialisiert"-Meldung wirft?)
Aber hier hast'e schon Recht, im Prinzip ist es natürlich sinnlos, wenn der Parameter bei der Anfrage mit übertragen wird, obwohl man nur die Rückgabe braucht.


Und in Verbindung mit Interfaces hatte ich ein paar nette Speicherlecks kennengelernt.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz