2010-09-28 5 views
0

Je travaille sur l'application mvc.net. Le client va déplacer la production dans un environnement de cluster. Le problème est que je stocke des images dans le système de fichiers local. Les images peuvent être téléchargées dynamiquement par les utilisateurs via l'interface du site Web. Comment puis-je changer l'application afin de garder les images en état de marche?Stockage des images téléchargées sur une batterie de serveurs Web

La solution possible est l'utilisation de dossier partagé pour tous les serveurs, mais dans ce cas, je pense que je dois développer HttpHandler qui renverra des images de ce dossier. Donc, cela peut affecter les performances.

Répondre

1

La solution possible est l'utilisation de dossier partagé pour tous les serveurs, mais dans ce cas, je pense que je dois développer HttpHandler qui renverra des images à partir de ce dossier. Donc, cela peut affecter les performances.

Une autre option consiste à avoir un serveur distinct dédié à la fourniture d'images & fichiers statiques. Vous pouvez l'accorder à cette fin. Quand un fichier est téléchargé, il va à ce serveur (qui pourrait ou ne peut pas être fait par les autres serveurs).

+0

Oui, c'est une bonne idée. Mais il y a un inconvénient ici - la maintenance d'un serveur web séparé. – Egor4eg

+0

Et j'ai une question à vous poser: quelle est une meilleure pratique pour écrire des fichiers sur ce serveur: il suffit de les écrire directement dans le dossier partagé sur ce serveur ou créer une méthode de service web qui nécessite un fichier et son chemin? – Egor4eg

+0

c'est une question de couplage lâche que vous voulez de votre environnement. J'utiliserais simplement le partage réseau pour le moment, et seulement si nécessaire, je passerais à un service web, c'est-à-dire si vous devez mettre plus d'une place, exécuter un pré-traitement des images/vidéos, etc. sur votre environnement spécifique et où vous voulez mettre les files d'attente de chargement/traitement même si la charge était extrêmement élevée. – eglasius

0

Envisagez d'utiliser un CDN tel que Amazon's S3.

+0

Le client veut éviter les services de tiers – Egor4eg

Questions connexes