2010-10-06 4 views
0

J'ai une application web simple pour effectuer des examens en ligne pour les étudiants. Toutes les questions sont des questions à choix multiple. Environ 5000 utilisateurs vont passer l'examen. Mon backend est mysql et utilise PHP comme frontal. Je veux connaître la configuration matérielle des serveurs qui seront nécessaires pour héberger cette application et travailler de manière transparente pour le nombre requis d'utilisateurs.Web Hosting, Web Scaling

Je suis également à la recherche de solutions cloud. Si je choisis des instances d'Amazone EC2, est-ce que certaines personnes peuvent me conseiller sur le type de machine EC2 que je devrais utiliser pour cette application?

Répondre

0

Il est impossible de connaître les spécifications exactes des serveurs qui seront nécessaires pour exécuter votre installation, car il y a trop de variables. Cependant, c'est une bonne question: quand j'étais étudiant à l'université, un professeur a essayé de faire ça et n'a pas fait de test: à la date de l'examen, le système a été surchargé et l'examen a dû être annulé !

Commencez par tester ce que vous avez déjà. Vous pouvez utiliser quelque chose comme ab tool ou JMeter. Il simulera automatiquement la charge demandée, ce qui vous permettra de vérifier le fonctionnement de votre serveur et d'agir en conséquence.

0

La conception de l'application est également importante. Comme vous pouvez mettre en cache toutes les questions à la couche Web pour éviter la requête de base de données. Rendre l'application lourde du client telle que la charge utile du serveur soit minimale (réponse json) pour réduire la charge de temps de téléchargement sur le serveur.

Demande plusieurs questions à la fois et Réponses des utilisateurs par lots pour répondre à la question ensemble pour diminuer les appels ajax. Utiliser la solution nosql pour éviter le surdébit des contraintes RDMS.