Toon posts:

[ASP] Fast and BIG file upload...

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hellow,

mijn bedoeling is dus om een bestand te uploaden naar een IIS server.
Via asp code heb ik al geprobeerd met klasses en componenten een bestand te uploaden. Dit werkt perfect, zolang het bestand maar niet te groot wordt.
Indien ik een bestand van ongeveer 70mb wil uploaden dan valt het systeem op zijn gat...

Wie weet er een oplossing om een GROOT bestand te kunnen uploaden of moet ik daar ftp voor gebruiken....

Greetz

  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 01-04 13:18
Jah het lijkt me toch echt beter om daar ftp voor te gaan voor gebruiken (File Transfer Protocol he)

Welk component heb je ervoor gebruikt dan?

Verwijderd

Topicstarter
Active ASP Fast File Upload Component v1.1.

En de klasse was een upload.asp met buffering.inc.

Beide werken goed, maar....

Verwijderd

70 mb lijkt me wel ook een beetje groot, is zowiezo erg grote belasting van de webserver.

misschien kun je es kijken naar een ActiveX ftp upload control ofzo

wel niet gratis, upload tot 4 Gb
http://fileup.softartisans.com/default.aspx?PageID=131

  • _Thanatos_
  • Registratie: Januari 2001
  • Laatst online: 22-06 10:32

_Thanatos_

Ja, en kaal

Let wel dat je server ws zeker 210MB geheugen zal alloceren voor zo'n upload. Misschien zelfs wel meer. eerst 140MB omdat je file encoded opgestuurd wordt, waarmee ie max 2x zo groot wordt, en nog es 70MB voor het decoden. Als je het dan ook nog es in een database wilt opslaan, heb je nog es >140MB geheugen nodig om de query met hexadecimale string te bouwen.

Al met al zou ik zulke enorme uploads via HTTP vermijden als het maar half kan. FTP werkt veel efficienter, zowel op de client als op de server.

日本!🎌


  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

ik heb er weleens een zelf geschreven in VB. Die code is van het bedrijf dus kan ik je niet geven ;)

waar je op moet letten is dat alle voorbeelden in ASP zo'n beetje de bytestream omzetten naar een array van characters. Daar gaat ontzettend veel performance verloren, omdat die array in ASP ook nog eens uit variants bestaat...

het best kun je zoeken naar upload en het gebruik van streams; ik heb daarmee zonder problemen 200 MB geupload :P

het idee is dat je aan het begin van de request.binarystream de header opvraagt en omzet naar characters, om vervolgens met de body van de stream in 1 keer savetoFile te doen. Dit kan met streams of ook met ADODB.Stream meen ik ;)

Je zet de stream dus niet om naar een ander type, maar de kunst is om precies het goede stuk uit de request.binarystream te kopieren naar een file...

hoop dat dit je wat helpt :)

kaart != map && bottel != fles
Wacht op antwoord

Pagina: 1