Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Fileupload verschnellern bzw mehrere gleichzeitig! (https://www.delphipraxis.net/66513-fileupload-verschnellern-bzw-mehrere-gleichzeitig.html)

Die Muhkuh 30. Mär 2006 17:12

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Hi,

du könntest trotzdem mal FTP-Upload versuchen (nur für dich) und schauen, ob du damit wirklich schneller bist. Wenn ja, könntest du ja in eine Ini-Datei die verschlüsselten Daten (Zum Verschlüsseln empfehle ich das DEC) mitgeben.

Mich würde es auch mal intressieren, ob du mit FTP schneller voran kommst.

Ansonsten bliebe dir noch der Zipweg.

bennle 30. Mär 2006 17:22

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Zitat:

Zitat von Spider
Hi,

du könntest trotzdem mal FTP-Upload versuchen (nur für dich) und schauen, ob du damit wirklich schneller bist. Wenn ja, könntest du ja in eine Ini-Datei die verschlüsselten Daten (Zum Verschlüsseln empfehle ich das DEC) mitgeben.

Mich würde es auch mal intressieren, ob du mit FTP schneller voran kommst.

Ansonsten bliebe dir noch der Zipweg.

Hallo,
Alles klar, werde es mal testen und dann bescheid geben.

Jetzt muss ich mich nur auf die schnelle mit den Threads anfreunden. Oder könntest du mir schnell meine Funktion umschreiben oder erkläre wie ich sie umschreiben muss.

MfG
Bennle

Frickeldrecktuxer_TM 30. Mär 2006 17:29

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Zitat:

Zitat von Spider
Wenn ja, könntest du ja in eine Ini-Datei die verschlüsselten Daten (Zum Verschlüsseln empfehle ich das DEC) mitgeben.

never. do. this.
daran ist nichts "sicherer". das passwort muss entschlüsselt werden dann liegt es unverschlüsselt im speicher. anschließend muss es unverschlüsselt übertragen werden wobei es von jedem abgefangen werden kann. FTP ist per definition nicht sicher sobald die leitung nicht sicher ist und das ist sie im internet nie. also verschlüsselnde FTP-server benutzen (zusammen mit OpenSSH zum beispiel SFTP) oder einen account auf dem server anlegen der nur beschränkten zugriff hat. bei dem wäre es dann nicht so schlimm wenn das passwort bekannt wird.

bennle 30. Mär 2006 17:34

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Zitat:

Zitat von Frickeldrecktuxer_TM
Zitat:

Zitat von Spider
Wenn ja, könntest du ja in eine Ini-Datei die verschlüsselten Daten (Zum Verschlüsseln empfehle ich das DEC) mitgeben.

never. do. this.
daran ist nichts "sicherer". das passwort muss entschlüsselt werden dann liegt es unverschlüsselt im speicher. anschließend muss es unverschlüsselt übertragen werden wobei es von jedem abgefangen werden kann. FTP ist per definition nicht sicher sobald die leitung nicht sicher ist und das ist sie im internet nie. also verschlüsselnde FTP-server benutzen (zusammen mit OpenSSH zum beispiel SFTP) oder einen account auf dem server anlegen der nur beschränkten zugriff hat. bei dem wäre es dann nicht so schlimm wenn das passwort bekannt wird.


Stimmt daran habe ich garnicht gedacht!! Also kommt das nicht in Frage!

Bennle

Die Muhkuh 30. Mär 2006 17:35

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
@Frickel

:wall: Mist, daran hab ich auch nicht gedacht.

bennle 30. Mär 2006 17:40

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Hab mir das mit den Threads grad mal angeschaut, aber irgendwie verstehe ich nicht wo und wie ich die Threads starte.

Ich denke es liegt auch einfach daran, dass ich das bis heute Abend fertig haben will und unter Zeitruck stehe :lol:

Die Muhkuh 30. Mär 2006 17:42

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Hi,

ich muss mich etwas präzisieren. Es würde reichen, wenn du aus dem Tutorial nur Kapitel 8 (Das VCL-Thread Objekt) liest.

Wenn Du noch etwas wartest, versuche ich schnell ein kleines Beispiel zu tippen.

Die Muhkuh 30. Mär 2006 17:56

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Hi,

auf die schnelle fiel mir das hier ein:

Delphi-Quellcode:
TUploadThread = class(TThread)
  private
    FLocalFileName: String;
    FAToURL: String;
  protected
    procedure Execute; override;
  public
    constructor Create(const LocalFileName: String; const AToURL: String);
  end;

implementation

{ TUploadThread }

constructor TUploadThread.Create(const LocalFileName: String; const AToURL: String);
begin
  FLocalFileName := LocalFileName;
  FAToURL := AToURL;
end;

procedure TUploadThread.Execute;
var
  IdHTTP: TIdHTTP;
  picture: TIdMultiPartFormDataStream;
begin
  IdHTTP := TIdHTTP.Create(nil);
  picture := TIdMultiPartFormDataStream.Create;

  try
    IdHTTP.Request.ContentType := 'multipart/form-data';

    picture.AddFile('bild0', FLocalFileName, 'image/jpeg');

    try
      IdHTTP.Post(FAToURL, picture);
    except
      on E: Exception do
        raise Exception.Create('Fehler: ' + E.Message);
    end;
  finally
    IdHTTP.Free;
    picture.Free;
  end;

  Terminate;
end;

// Aufrufbeispiel

var
  UploadThread: TUploadThread;
begin
  UploadThread := TUploadThread.Create('C:\Test.jpg', 'www.blubb.de/ladmichhoch.php');
  UploadThread.FreeOnTerminate := true;
end;
Ich hab jetzt nicht alles aus deinem Code übernommen, aber ich denke, dass du das Prinzip verstehst (selbst, wenn mein Code jetzt nicht funktioniert)

bennle 30. Mär 2006 19:49

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Hallo,
Hab mal deinen Code probiert! Allerdings bekomm ich Ihn nicht zum Laufen! Kommt immer ein Thread error (Handle ungültig)

Was muss ich da tun?

MfG
Bennle

Thorben86 30. Mär 2006 21:41

Re: Fileupload verschnellern bzw mehrere gleichzeitig!
 
Zitat:

Zitat von Spider
Also, rechnen wir mal:

30 Bilder * 50 kb = 1500kb = 1,47mb

DSL 2000 kann 24 kb / s:

1500 / 24 = 62,5 s

OK, das wäre 1 minute.

Hierbei ist aber zu beachten, dass du nicht durchgängig mit 24 KB uppst, sondern nur einen Teil der Zeit.
Am Anfang gehts erst langsam hoch und zum ende hin wird es meistens auch noch mal langsamer, so gesehen kommt da noch etwas Zeit hinzu und generell ist es nich immer der Fall, dass man mit seinem Maximalen Upload auch uppt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:09 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz