Je travaille sur un site Web qui est susceptible d'être très gourmand en bande passante. Une caractéristique majeure du site lorsqu'il est en cours d'utilisation peut tirer jusqu'à 1 Mbps pour une seule session. Heureusement, une fois que les utilisateurs auront dépassé le nouveau facteur de jouet, l'utilisation de cette fonctionnalité sera probablement de 1 à 5% ou moins (probablement beaucoup moins) du temps de session.
Cependant, les nouveaux utilisateurs sont susceptibles de jouer avec cette fonctionnalité un peu, surtout au lancement. Je suis très préoccupé par l'utilisation de la bande passante.
C'est plus ou moins un marché de niche, donc je n'aurai jamais besoin d'évoluer à des niveaux fous comme YouTube. Cependant, il est tout à fait possible que ce soit quelques téraoctets / mois.
La colocalisation est-elle ma meilleure option? Quels services de bande passante bon marché (colocation / hébergé / cloud / autre) sont disponibles?
Réponses:
Beaucoup dépendra du nombre de sessions simultanées que vous attendez. Si plus de quelques sessions simultanées sont probables, alors vous allez avoir besoin de quelque chose qui vous accorde une connexion à 100Mbit, 1Gbit si vous en attendez plus de 50.
Cela dépendra également du type de résilience dont vous avez besoin - si vous devez disposer de garanties de disponibilité et d'autres SLA et / ou systèmes de basculement pour prendre le relais en cas de problème (car le projet est suffisamment important pour une courte période d'indisponibilité). être embarrassant) alors vos options sont plus limitées et vos coûts seront plus élevés.
Si vous pouvez séparer les données volumineuses du reste de l'application, vous n'avez pas besoin de tout déplacer vers une nouvelle solution d'hébergement. Par exemple, si les éléments à large bande passante sont des fichiers vidéo, vous pouvez louer un serveur dédié avec une bonne bande passante quelque part et les héberger - vous pouvez obtenir des serveurs sur de bons hôtes avec une bande passante décente et des connexions 100 Mbits + étonnamment moins chers ces jours-ci (je paie 50 $ / mois pour un petit serveur avec une liaison 10Mbit que je pourrais saturer dans les deux sens 24h / 24 et 7j / 7 si j'en avais besoin, donc une liaison 100Mbit avec un serveur plus robuste attaché ne va pas coûter cher à moins d'avoir besoin d'une disponibilité garantie et d'autres SLA et / ou serveurs gestion de l'hébergeur). Si le serveur ne sert que des fichiers statiques (même les gros), vous n'avez pas besoin de beaucoup de machine en termes de CPU et de RAM, juste des disques rapides et de la bande passante. Il pourrait également être utile de rechercher des solutions hébergées «cloud» ou un réseau de diffusion de contenu - elles pourraient être plus faciles à faire évoluer si vous sous-estimez la quantité de bande passante dont vous avez besoin sont en théorie beaucoup plus résilientes (vous pouvez donc obtenir une garantie de disponibilité décente avec compensation s’ils ne respectent pas ce SLA). Garder l'action de réduction de la bande passante séparée de ces manières présente l'avantage supplémentaire que si la fonctionnalité à bande passante élevée attire suffisamment l'attention pour la faire analyser, elle ne bloquera pas toutes vos autres fonctionnalités en même temps.
la source
Purement historique:
à l'époque des jeux Facebook, les gens étaient tous habitués aux MMO au format texte basés sur un navigateur.
Ogame était relativement nouveau. Il était lourd graphiquement et un système de carte de 9 fois 999 pages (9 univers avec 999 secteurs avec de la place pour 15 planètes chacun, et chaque planète pouvait avoir une lune).
Le nombre d'utilisateurs se joignant était fou et le trafic encore plus.
Alors qu'ont-ils fait pour le résoudre? Ils ont commencé à utiliser un système de modèles PHP et ont permis aux utilisateurs d'héberger eux-mêmes les images et les fichiers CSS. Tout ce que vous aviez à faire était de cocher une case et d'entrer le chemin absolu vers le dossier de base. Ils l'enregistreraient dans leur base de données, utiliseraient l'
<base>
élément HTML et le système de modèles définirait l'URI de http: // chemin / vers / image vers fichier: /// chemin / vers / imageAprès cela, tous les liens img pourraient rester les mêmes. Rien ne devait être téléchargé, car les utilisateurs l'avaient déjà. Cela signifie un chargement de page plus rapide pour l'utilisateur (ce qui signifie de meilleures évaluations de produits) et une utilisation de la bande passante plus faible pour l'entreprise hébergeant le site.
Et en prime, ils l'ont vendu comme "vous faire des arrière-plans et des images personnalisés, ne sommes-nous pas gentils pour vous laisser faire ça?"
la source
Nous avons un site très fréquenté et avons beaucoup de photos chargées sur chaque page. Nous avons des serveurs dédiés mais avons décidé de mettre les photos sur Amazon S3 . Il semble que vous parliez de fichiers vidéo ou d'un autre type de fichier volumineux qui, je pense, s'appliquerait toujours ici. Voici quelques avantages et inconvénients (pour nous)
Avantages
Les inconvénients
d'autres pensées
Si ce ne sont pas des fichiers multimédias ou des téléchargements de fichiers volumineux dont vous parlez, ma réponse et plusieurs autres pourraient ne pas avoir de sens. Donnez-nous plus de détails et nous ferons de notre mieux pour vous aider.
la source
Il semble que ce que vous devez regarder est un CDN tel qu'Amazon Cloudfront .
Consultez ces questions pour des discussions sur l'utilisation des CDN:
la source
En fonction de l'état / du pays cible (ou du monde), j'utiliserais de nombreuses solutions de cluster ("Cloud") sur différents sites (les réseaux de localisation doivent être surveillés ;-)). D'un côté, vous avez le contrôle total sur votre CDN mais sur l'autre site, vous avez beaucoup à faire (comme la surveillance, la prise en charge des infrastructures matérielles et logicielles et bien d'autres).
Donc des solutions "managées" comme AWS ou quelque chose. Il existe de nombreux fournisseurs de CDN / Cloud qui offrent une large gamme de fonctionnalités.
OFFTOPIC: Jetez un œil à Puppet [1] :-)
[1] http://www.puppetlabs.com/
la source
Oui, vous devriez utiliser Amazon AWS quelque chose de similaire.
la source