L‘un des plus évidents pour une application web, c’est l’hébergement.
Mais comment estimer le coût de la puissance machine, la capacité de stockage ou la bande passante, alors même que je n’ai pas encore d’utilisateurs pour tester la charge?
Alors, on va partir sur des principes, au petit bonheur, entre mon expérience – qui a dit qu’elle valait rien? – et ce que j’ai trouvé ici ou là.
Donc, à mes lecteurs experts en la matière, je demande humblement une aide si ce qui suit n’est qu’un ramassis d’âneries : j’ai grand besoin d’une estimation à peu près valable pour savoir où je vais et finir ce @ »#~_\{- de Business Plan.
Voici donc les hypothèses de départ pour mes calculs:
– Pour 100 inscrits sur Dress-Me, 4 sessions parallèles actives en permanence au max
– Pour une session active, l’application utilise 15Mo de mémoire vive sur le serveur
– Les photos de vêtements pèseront maximum 60Ko après redimensionnement
– Dans le plan Free, les Dress-MeNautes pourront mettre jusqu’à 100 photos max
– Le serveur d’application et BDD sera chez Gandi– Le serveur de stockage sera chez Amazon, dans leur service S3
– L’application fait peu de calcul lourd, donc le besoin en puissance processeur est trivial et non pris en compte ici
Voici donc ce que cela donne pour une puissance en besoin pour 100 sessions simultanées, soit 2500 comptes:
– Mémoire Vive : 1,5Go ( 15Mo * 100 sessions)
Rien que ce chiffre implique une machine à 6 parts chez Gandi dont la configuration est la suivante :
Pour les binaires de l’application et la base de données, les 48Go suffiront.
Pour le stockage, il faut se placer dans une autres optique, à savoir dans « combien il va me falloir de temps pour avoir 2500 inscrits avec photos? ».
Bon, on se la pète grave, mais on va dire 3 mois!
Soit donc un taux de conversion constant de fou de 800 personnes / mois environ! Et tous des personnes folles furieuses de Dress-Me qui complètent leur data à 100%!
Qui peut le plus, peut le moins, non?
Donc, les 100 photos à 60Ko max prennent 6Mo. Ajoutons 4Mo pour les photos de pieds que les utilisateurs pourront ajouter, histoire d’être large.
Cela nous fait donc 10Mo de stockage par compte sur Dress-Me.
Pour 800 personnes par mois, on arrive à un besoin d’espace de 8Go (64Gb).
Si on se sert de la page de calcul d’Amazon, on arrive à ceci :
Je ne sais si j’ai parfaitement compris comment remplir les cases, j’ai fait selon ce que j’estimais exact. Surtout, n’hésitez pas à me rapporter votre avis!
On tombe donc sur la modique somme de 19,36 dollars par mois, soit 14, 25€ environ au cours d’aujourd’hui :
On arrive donc à une estimation de coût mensuel pour 2500 inscrits de :
Voilà, vous savez tout…
Peut-être vous gaussez-vous de mes déboires dans ce calcul?
Peut-être êtes vous aussi dubitatif que moi sur la façon d’aborder la question.
Mais si vous aviez une âme charitable, vous me viendriez un peu en aide
Merci par avance!
15 Mo par session, j'espère que tu te trompes…
Pour ce qui est des photos, si tu ne redimensionne pas côté client, tu dois quand même prendre en compte la BP induite par l'UL de celles-ci
Pour ton CPU, je le jetterai pas si vite aux oubliettes, c'est ultra-important
Hello, waddle
pour les 15Mo par session, j'ai vu large en effet, mais c'est plus par expérience dans les clients lourds : je manque de backup en web :/
Pour les photos, le redimensionnement se fait côté client en effet – via flex -.
Et pour le CPU, j'ai un gros pb : impossible de tester sur une personne, donc difficile de voir ce que cela consomme vraiment!<
T'as session doit peser moins d'un Ko je pense ou alors c'est qu'il y a un pb de conception. Mais si tu fais du RoR je crois que c'est stateless donc ta session est proche de 0.
Attention au redimensionnement côté client avec du Flex vu la consommation de ressources côté client.
Pour tester ton CPU il te faut un outil de test de charge. Sinon tu n'y arriveras pas
A priori, oui.
Mais rails a son propre serveur HTTP, il me semble…
Et pour les sessions, je pense que tu exagères autant que moi : peu probable qu'on soit proche du zéro : session active pèse obligatoirement sur le serveur, sinon, je ne vois plus à quoi sert autant de RAM ???? :/
Si si, ta session est proche de 0. Il ne doit rien avoir dedans.
Pour le serveur HTTP plus applicatif, sachant que tu fais du script, je te conseil de surveiller ton CPU.
La RAM ne sert à rien quand on fait du stateless, sauf si tu as bcp de caches par exemple.
Encore une fois, je ne vais pas chercher à te contredire, je verrai à l'usage si la mémoire joue pour une raison ou une autre.
Et pour le CPU, ok, je vais monitorer aussi si je peux
Bah fais un test de charge avec JMeter par exemple, tu te rendras vite compte que ta session ne bouge pas de taille ou très peu. Si c'est le cas, c'est que tu utilise ta session, ce qui est rarement justifié, et encore, que pour des petites données. Surtout en RoR, PHP ou autre techno de script, il s'agit de stateless, donc la session est quasi vide.