Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

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

  Alt 18. Jun 2014, 17: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);
$2B or not $2B

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