IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Conception Web Discussion :

Solution pour transférer des gros fichiers par HTTP


Sujet :

Conception Web

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2007
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 162
    Points : 130
    Points
    130
    Par défaut Solution pour transférer des gros fichiers par HTTP
    Bonjour à tous et merci de me lire,

    Je me pose une question existentielle dans ma vie de développeur
    Je me demande comment font les sites tel yousendit.com pour recevoir les fichiers volumineux de leurs utilisateurs. En download, pas de soucis, le HTTP à l'habitude et est adapté. Mais en upload, plusieurs problèmes se posent. Si je fais un simple formulaire (avec la récupération du fichier grâce à PHP par exemple), mon navigateur partira en timeout (message : impossible d'afficher la page) au bout d'un certains temps. En effet, le navigateur ne recevant pas de données (puisque l'envoi est long), il pensera que le serveur ne répond plus. A ceci je pense qu'on peut contourner grâce à AJAX (pour renvoyer régulièrement l'état du transfert par exemple, en plus c'est jolie car dynamique ).
    Mais alors se pose un second soucis. Toujours en PHP (je connais moins dans le détails les autres langages mais je m'imagine que c'est pareil), la config par défaut autorise un fichier de 2Mo (je crois). Il faut modifier le fichier de config pour accepter plus gros. Mais là, pour yousendit, on parle de 1Go possible ! J'imagine aussi qu'il faut donc modifier la taille maxi que prendra le script en mémoire et que le serveur va ramer...
    Et pourtant yousendit à l'air de fonctionner en PHP (avec AJAX).
    Alors ? Des idées ? Des avis ? Vous voyez pas où peut être le problème ?

  2. #2
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    Toujours en PHP (je connais moins dans le détails les autres langages mais je m'imagine que c'est pareil), la config par défaut autorise un fichier de 2Mo (je crois). Il faut modifier le fichier de config pour accepter plus gros. Mais là, pour yousendit, on parle de 1Go possible ! J'imagine aussi qu'il faut donc modifier la taille maxi que prendra le script en mémoire et que le serveur va ramer...
    Et pourtant yousendit à l'air de fonctionner en PHP (avec AJAX).
    Salut,

    Je ne fait qu'émettre un avis donc aps sur à 100%
    pour ce qui est de l'envoi de fichier via php/ajax, le script effectue une réception donc pour moi seul une monter en charge légère est à prévoir à savoir le faite de transférer le fichier le script en lui même ne devrait pas bouffer tant de ressource que cela.Ensuite, les service comme yousendit ne dispose pas non plus d'une charrette boiteuse et encore moins d'une connexion internet 1mo donc le tout paramétrage + moyen technique sont à mon sens nécessaire à ce type de service.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2007
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 162
    Points : 130
    Points
    130
    Par défaut
    Oui c'est sûr, yousendit possède des serveurs multiples certainement clusterisés...
    Ok pour la montée en charge du script... Ca mériterait un petit essai en fait... Je pense que je vais m'y coller.
    Du coup si ça ne pose aucun problème pourquoi la config par défaut limite-t-elle la taille de transfert des fichiers ? Pour des hébergeurs mutualisés je comprends mais sinon... Encore que je n'ai jamais lu nul part qu'il ne fallait surtout pas augmenté cette taille de manière importante...

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 448
    Points : 2 284
    Points
    2 284
    Par défaut
    ben ils doivent avoir plein plein de frontaux pour accepter les input et des répartiteur pour une navigation intelligente de l'internaute sur l'ensemble du cluster.

    Parce que 1go à mettre sur le serveur....
    Disons qu'il y ai 100 utilisateurs qui fasse cela (100 utilisateurs du site web c'est peu), mais sa te bloques 100 slots pendant N temps (minutes/heures).
    Donc là il faut déjà prévoir un nombre de slots suffisant pour
    - la nav sur le site
    - les uploads

    A cela il faut voir que je ne suis pas tout fait de votre avis sur la montée mémoire avec l'upload.
    Disons que le chargement du fichier jusqu'à son emplacement temporaire doit pouvoir être pris en charge sans montée de mémoire par le couple apache/php.

    Par contre après il faut traiter le fichier, vérifier celui ci, le déplacer, le dupliquer (sur les frontaux. ou le mettre sur un nas d'ailleurs.) ect.

    Donc là téhoriquement il y à du traitement php, et donc une grosse occupation mémoire en perspective pour nos 100 uploads de 1 giga (même si ils n'arrivent pas au bout en même temps).

    Et donc, j'imagine qu'il dispose d'une couche spécifique en c pour tous ces traitements, ou alors des scripts très très travailler.

    Mais ce service à des besoins bien particulier qui s'éloigne un peu des points forts de php, et donc y'à un peu de dév.

    a plus

Discussions similaires

  1. le meilleur langage pour traiter des gros fichiers xml
    Par hansaplast dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 06/07/2009, 22h35
  2. [C#.NET 2.0] récupérer des fichiers par http
    Par cortex024 dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 21/02/2007, 16h26
  3. Upload par FTP avec des gros fichiers
    Par __fabrice dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 8
    Dernier message: 07/06/2006, 12h08
  4. Transférer des gros fichiers, choix technologique?
    Par RB Greg dans le forum Développement
    Réponses: 8
    Dernier message: 25/04/2006, 10h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo