Quelle est la méthode la plus précise pour estimer les besoins en bande passante de pointe pour une application Web?

StackOverflow https://stackoverflow.com/questions/94779

Question

Je travaille sur une proposition client et ils devront mettre à niveau leur infrastructure réseau pour prendre en charge l'hébergement d'une application ASP.NET. En gros, je dois estimer l'utilisation de pointe pour un système avec un nombre d'utilisateurs connu (actuellement 250). Une réponse simple du type "vous aurez besoin d’une ligne T1 dédiée". serait probablement suffisant, mais je voudrais avoir des données pour le sauvegarder.

Une autre question a fait référence à NetLimiter, qui a l'air assez lisse pour avoir une idée de ce qui est utilisé.

Mon idée générale est de lancer l'application Web et d'utiliser le système de la manière dont je prévois qu'il sera utilisé chez le client, à un rythme très lent, sur une certaine période, puis que je multiplierai l'utilisation de la bande passante par le nombre d'utilisateurs et diviser par le temps.

Cela ne semble pas très scientifique. C'est peut-être suffisant pour une proposition, mais j'aimerais voir s'il existe un meilleur moyen.

Je sais qu'il existe des outils de chargement disponibles pour tester les performances des applications Web, mais il semble que ceux-ci ne simuleraient pas avec précision la charge maximale des utilisateurs à des fins de test de la bande passante (trop à la fois).

La plate-forme est Windows / ASP.NET et l'application est hébergée dans SharePoint (MOSS 2007).

Était-ce utile?

La solution

Au lieu d'un bon outil de génération de rapports pour l'utilisation de la bande passante, vous pouvez toujours faire une estimation approximative.

N = Nombre de pages vues à l'heure la plus chargée P = Taille moyenne de la page

(N * P) / 3600) = Trafic moyen par seconde.

Le serveur lui-même aura beaucoup plus de trafic interne probablement pour le serveur de base de données / NAS / etc. Mais cela devrait vous donner une idée très approximative de son utilisation. Évidemment, vous devrez dépasser de loin la valeur ci-dessus, car vous ne voulez jamais être utilisé à 100%, et pour permettre un autre trafic.

Je ne suggérerais pas non plus d’utiliser un nombre arbitraire tel que 250 utilisateurs. Utilisez le jour / heure de production le plus lourd comme référence. Doubler et tripler si vous voulez, mais cela vous donnera la distribution attendue du comportement de l'utilisateur si vous avez de bons fichiers journaux / audit des utilisateurs. Cela contribuera à rendre votre estimation plus précise.

Comme un autre intervenant l’a souligné, un centre de données est une bonne idée lorsque la redondance et la disponibilité de la bande passante deviennent une préoccupation. Vos besoins peuvent varier, mais ne rejetez pas la suggestion à la légère.

Autres conseils

Plusieurs questions supplémentaires doivent être posées ici.

S'agit-il de 250 utilisateurs au total ou de 250 utilisateurs simultanés? Si concurrente, est-ce 250, ou 250 en général? S’il s’agit de 250 utilisateurs au total, s’attend-on à ce qu’ils l’utilisent tous en même temps (par exemple, un site intranet, où les utilisateurs doivent l’utiliser dans le cadre de leur travail), ou s’agit-il plutôt d’un site communautaire où ils peuvent ou non? utilise le? Je suppose que, comme vous l'avez dit, il s'agit de 250 utilisateurs au total, mais cela n'en dit pas assez sur le site pour permettre une estimation.

S'il s'agit d'une communauté ou "normale" site Internet, cela dépendra également de l'utilisation - par exemple, est-ce que les gens vont vraiment utiliser cela intensément, ou est-ce quelque chose auquel certains utilisateurs vont simplement se connecter une fois, puis l'oublier? Cela peut être une question difficile de votre point de vue, car vous voudrez assumer l’ancienne, mais si vous dépensez beaucoup d’infrastructures réseau sans que personne ne les utilise, cela peut être une très mauvaise chose.

Que fait le site? Au bas du spectre, il y a un "typique" application Web, où vous avez des pages de taille raisonnable (disons, 1-2k) et une poignée d’images. Un site plus multimédia est un peu plus intense - par exemple, la navigation dans les images de style Flickr. À l'extrémité supérieure se trouve un site avec beaucoup de téléchargements - films en streaming, ou simplement des fichiers volumineux ou des ensembles de données en cours de téléchargement.

Cela dépasse un peu le seuil de votre question, mais une autre chose à considérer est l’avenir du site: l’utilisation va-t-elle doubler l’année ou le mois prochains? Veillez à ne pas vous engager dans un contrat à long terme avec quelque chose comme une connexion T1 ou à fibre optique, sans avoir la moindre possibilité de mise à niveau.

Une autre question est la fiabilité - avez-vous besoin de redondance dans les connexions? Cela peut coûter cher au départ, mais il existe des moyens de faire des connexions multi-hébergées où vous pouvez équilibrer l'accès entre deux liens, puis en utiliser un (même avec une capacité réduite) en cas d'échec.

Une autre option à prendre en compte, qui vous permet d'éviter complètement toute cette question, consiste simplement à héberger l'application dans un centre de données. Vous payez des frais mensuels relativement bas (bas par rapport au coût d’une connexion dédiée de haute qualité) et vous obtenez la bande passante dont vous avez besoin (par exemple, la plupart des plans d’hébergement vous offrent quelque chose comme un transfert de 500 Go par mois, pour commencer - et certains vont juste vous donner illimité). Le centre de données sera également plus fiable que tout ce que vous pouvez construire (à l'exception de votre propre centre de données à 6 chiffres ou plus) car il possède un Internet redondant, une alimentation de secours, un refroidissement redondant, une protection incendie, une sécurité physique ... et des personnes qui gèrent tout de cela pour vous, de sorte que vous n'avez jamais à y faire face.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top