Construire une application client-serveur pour le système de concours de programmation local
-
12-11-2019 - |
Question
Je pense créer un système de serveur client, dans lequel le serveur peut recevoir le code de l'utilisateur et le compiler et renvoyer le résultat à l'utilisateur. Ce système sera utilisé pour un concours de programmation en ligne local dans mon université.
Donc, fondamentalement, l'utilisateur peut écrire du code (php / c ++ / java, etc.) et soumettre son code à partir du frontal (application Web). Une fois qu'ils cliquent sur Soumettre, ce code doit être envoyé au serveur, puis le serveur compilera le code et renverra le résultat à l'utilisateur. Quelle est la meilleure façon de cela, afin que le serveur puisse compiler plusieurs codes de langue (C ++, C, Java, PHP, Python, etc.)?
Quelles sont les meilleures pratiques dans la conception de ce système? Dois-je utiliser des services Web pour passer le code utilisateur à différents services (1 service pour recevoir et compiler le code C ++, 1 service pour recevoir et compiler le code Java, 1 pour Python, etc.)?
Veuillez partager votre idée et vos expériences à ce sujet.
La solution
Vérifier Hudson, nous l'utilisons dans notre entreprise et il compile nos applications via ANT, puis nous donne les applications compilées dans RPM.