|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2013 Messages : 6 ![]() |
Bonjour, l'on m'a demandé de réaliser un script "météo" qui joindrais un serveur xmpp au choix et renverrait une page de couleur en fonction de la réponse de ce dernier.
J'ai donc une vue qui m'affiche un formulaire avec lequel on choisi le serveur parmi ceux proposés. SERVERS = ( ('1', 'server_x'), ('2', 'server_y'), ('3', 'server_z'), ) class ContactForm(forms.Form): username = forms.CharField(max_length=100) password = forms.CharField(max_length=100) server = forms.ChoiceField(choices=SERVERS) def contact(request): if request.method == 'POST': form = ContactForm(request.POST) if form.is_valid(): username = form.cleaned_data['username'] password = form.cleaned_data['password'] server = form.cleaned_data['server'] return HttpResponseRedirect('/connexion_x') else: form = ContactForm() return render_to_response('connexions/accueil.html', { 'form': form, }, context_instance=RequestContext(request)) def connexion_x(request): c = RequestContext(request) c.update(csrf(request)) return render_to_response('connexions/connect_x.html', c) def connexion_y(request): c = RequestContext(request) c.update(csrf(request)) return render_to_response('connexions/connect_y.html', c) def connexion_z(request): c = RequestContext(request) c.update(csrf(request)) return render_to_response('connexions/connect_z.html', c) Actuellement au terme de ce code j'ai une réponse avec une page ayant le template lié à la page connexion_x. Ce que j'aimerais faire c'est un thread qui lance la connexion au serveur en boucle et renvois les données dans une base de donnée (serveur et état du serveur). Et récupérer les dernières données de la base afin de renvoyer le dernier état du serveur choisi. Le script de connexion au serveur cnx = jabber.Cnx(username, password, server) cnx.register_message(messageHandler) cnx.connect() time.sleep(3) cnx.sendMsg('_JabberTest', 'plop !') time.sleep(3) cnx.disconnect() Je ne sais pas si j'ai été clair mais je suis prêt à donner plus d'explications si nécessaire. |
|
|
00
|
|
|
#2 |
|
Nouveau Membre du Club
![]() Administrateur systèmes et réseaux Inscription : octobre 2011 Messages : 50 ![]() |
salut,
je pense qu'il vaut mieux faire une appli à coté qui tourne en service.. et que tu interroges depuis ton appli django lorsqu'on te demande un affichage |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : février 2013 Messages : 6 ![]() |
Comment fais-tu "une appli qui tourne en service" stp ? merci d'avance
|
|
|
00
|
|
|
#4 |
|
Nouveau Membre du Club
![]() Administrateur systèmes et réseaux Inscription : octobre 2011 Messages : 50 ![]() |
ça dépend de l'os du serveur
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : février 2013 Messages : 6 ![]() |
les serveurs ont linux en OS
|
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() Administrateur systèmes et réseaux Inscription : octobre 2011 Messages : 50 ![]() |
il existe des centaines de distributions linux différentes...
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : février 2013 Messages : 6 ![]() |
aucune idée
|
|
|
00
|
|
|
#8 | ||
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 699 ![]() |
Citation:
Sur linux, çà s'appelle un daemon: c'est un process qui tourne sans terminal et qui se lance de façon particulière. Le plus simple étant d'utiliser la biblio daemonize. Lorsque vous écrivez: Citation:
Ceci dit je n'ai toujours pas compris pourquoi cela devait être aussi compliqué. - W
__________________
Architectures Post-Modernes |
||
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : février 2013 Messages : 6 ![]() |
grosso modo il faut que la personne choisisse son serveur, et qu'en réponse il y ai une page de couleur renvoyée en fonction de l'état de la connexion au serveur, et je dois utiliser une base de donnée.
c'est aussi compliqué parce que je suis novice et que j'ai tendance à toujours partir sur des trucs plus compliqué que nécessaire |
|
|
00
|
|
|
#10 | ||
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 699 ![]() |
Citation:
Si c'est une question de performance, le site Web dispose en général d'un cache "clé/valeur" qui pourrait être mis à profit pour éviter de faire une requête vers le serveur à chaque fois. Je ne vois pas trop l'intérêt de "charger" le serveur de BDD pour y récupérer des données aussi volatiles que le temps qu'il fait. Si les rafraîchissement sont tirés par les requêtes utilisateurs, plus besoin d'un daemon pour "pousser", plus besoin de tables pour les stocker, plus besoin de s'inquiéter du dimensionnement du serveur, des disques,... Citation:
- W
__________________
Architectures Post-Modernes |
||
|
|
00
|
|
|
#11 | |
|
Invité de passage
![]() Inscription : février 2013 Messages : 6 ![]() |
Citation:
|
|
|
|
00
|
|
|
#12 | |
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 699 ![]() |
Citation:
Vous avez certainement de bonnes raisons mais il m'est impossible de savoir ce que vous voulez faire et si les choix faits sont raisonnables. A partir de là, difficile de réfléchir à comment faire alors qu'il est quasi certain que j'aurais tout faux. - W
__________________
Architectures Post-Modernes |
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com