IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend Framework PHP Discussion :

Application temps réel et zend : chat


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Phiss
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2005
    Messages
    676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 676
    Points : 616
    Points
    616
    Par défaut Application temps réel et zend : chat
    Bonjour,

    Je souhaite faire une application sous Zend qui implique du temps réel.
    Je m'explique.
    Sur le site il y aura un chat qui doit être lié à d'autres partie du site.
    Le site en lui même est développé avec Zend donc je voulais faire le chat sur la même base.
    Ce qui me vient à poser comme question :
    Comment gérer les applications en temps réel sous Zend?
    Comme peut on faire pour rafraichir une page tout ou en partie sans que cela soit trop lourd pour le serveur?

    Merci.

    Pour info, j'ai chercher sur google des liens sur des chat avec zend mais tous me renvoi sur un site dont les sources sont sur un lien mort.
    " L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
    La Rochefoucauld

  2. #2
    En attente de confirmation mail

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Points : 637
    Points
    637
    Par défaut
    Je dirais que tout est une question de volumétrie et de performances attendues... Mais à mon avis un "moteur" de chat avec Zend Framework, si il est bien optimisé, utilisé conjointement avec un code Javascript qui communique via des requêtes AJAX suffirait à résoudre ton problème.

    Par contre le terme de "temps réel" me gêne un peu, tu n'auras pas vraiment de temps réel au sens où le serveur n'enverra pas de données "en push" vers le navigateur, c'est le navigateur qui va interroger le serveur régulièrement pour voir si il y a du nouveau à afficher.

    J'avoue aussi avoir un peu peur de t'avoir répondu totalement à coté

  3. #3
    Membre confirmé Avatar de Phiss
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2005
    Messages
    676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 676
    Points : 616
    Points
    616
    Par défaut
    Merci Nighty pour ta réponse. Rassure toi tu es bien dans le sujet.


    Je me suis lancé dans l'ajax afin de créer mon chat sous zend.
    En fait ce qui me gène c'est la montée de la charge sur les serveur lors de l'appel de la page.
    Du coup, si il y a plusieurs personnes, cela risque de très vite saturé le site.

    je clôture pour le moment, vu que je me lance dans la programmation de cette partie.
    " L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
    La Rochefoucauld

  4. #4
    En attente de confirmation mail

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Points : 637
    Points
    637
    Par défaut
    Je pense que tu peux considérablement optimiser ton chat Ajax, à la condition que le cahier des charges n'imposent de grosses contraintes de sécurité. En gros, si tout le monde, nouvel arrivant ou non, doit voir la même chose (par exemple les 30 dernières lignes) on peut imaginer mettre en cache le contenu qui sera servi à tous les utilisateurs.

    Attention toutefois tout ce que je vais dire là est très théorique, je n'ai jamais concrétisé d'application de ce genre... Mais à mon avis si tu définis le refresh à un délai raisonnable (pas plus rapide que 500ms) et que tu utilises un cache assez agressif niveau performance (par exemple le tout récent cache Static http://framework.zend.com/manual/en/...ackends.static ), il te suffira de regénérer un nouveau cache à chaque fois que quelqu'un envoie un message. Entre temps, chaque refresh sera équivalent à un appel serveur vers une page html...

    Encore une fois c'est très théorique, mais à mon avis ça devrait tourner.

  5. #5
    Membre confirmé Avatar de Phiss
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2005
    Messages
    676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 676
    Points : 616
    Points
    616
    Par défaut
    Bonjour,

    Merci pour ce dernier message.
    J'ai essayé de mettre en cache les données mais c'est pas forcément mieux.
    Que je passe par le cache ou l'exécution complète de la requête le serveur prend le même niveau de charge CPU.

    Bon pour le moment je passe par le cache du Zend_Registry.
    Le cache Static Zend_Cache_Backend_Static est il plus performant?
    Est il plus dur à mettre en place?

    Merci.
    " L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
    La Rochefoucauld

  6. #6
    En attente de confirmation mail

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Points : 637
    Points
    637
    Par défaut
    C'est marrant ça, j'étais persuadé avoir répondu, visiblement je n'avais répondu que dans ma tête

    Il vaut mieux regarder dans la doc sur ce point, car tout ce que je vais dire est le résultat d'un survol de la doc à la sortie de la 1.10 et j'ai peut-être mal interprété le fonctionnement du backend static.

    De ce que j'ai compris, le cache static permet de transformer le résultat d'un appel à l'application en page html.

    L'intérêt est qu'au delà du premier appel, l'application ne sera même pas utilisée ce qui devrait se solder par une très faible consommation de ressources.

    L'inconvénient, c'est qu'il faut qu'un autre appel puisse supprimer le fichier statique pour que l'application soit à nouveau appelée et que le cache soit mis à jour. Ca peut être très compliqué à mettre en place, mais dans le cas d'un chat ça me parait assez naturel.

    Voilà comment je "sens" la chose :
    Quelqu'un écrit un message, le contrôleur concerné est appelé, il enregistre le message et génère un nouveau fichier de cache.

    Quelqu'un "ping" le serveur pour réactualiser l'affichage : le serveur a juste à servir le fichier HTML, pas de scripts php, pas de requête...

    Ca demande à être creusé mais en gros, l'application sera sollicité une fois par nouveau messages, pour le reste le serveur ne subira "que" 2 appels par seconde par utilisateur sur un même fichier HTML. Par contre comme je l'ai mentionné avant, ça implique que tous les utilisateurs de la chat room voient la même chose...

Discussions similaires

  1. Modélisation des application temp réel avec SART et HOOD
    Par foufou.mr dans le forum Autres langages
    Réponses: 0
    Dernier message: 08/03/2013, 10h37
  2. Méthodes virtuelles pour applications temps-réel
    Par valefor dans le forum Langage
    Réponses: 6
    Dernier message: 19/07/2012, 18h50
  3. Application temps réel
    Par black_ghost dans le forum Windows Communication Foundation
    Réponses: 2
    Dernier message: 24/02/2012, 09h26
  4. exemple d'application temps réel à but pédagogique
    Par christianf dans le forum Robotique
    Réponses: 3
    Dernier message: 19/11/2008, 20h44
  5. Application Temps réel ASP.NET
    Par malayika dans le forum ASP.NET
    Réponses: 8
    Dernier message: 23/09/2008, 19h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo