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

ASP.NET Discussion :

Conception - Thread bouclant à l'infinie pour la persistance des données


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur

    Avatar de arnolem
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 852
    Par défaut Conception - Thread bouclant à l'infinie pour la persistance des données
    Bonjour les jeunes, Ça farte ?

    J'ai une question de conception à vous soumettre. Je viens de reprendre une application web en dotnet qui utilise un algorithme qui me laisse plutôt perplexe.
    Je souhaiterais avoir votre avis là dessus.

    L'application web utilise beaucoup de liste déroulante et ses listes déroulante sont issue de requêtes SQL. Afin d'éviter de requêter systématique en base de données à chaque affichage de liste, le développeur qui a conçu cette application à imaginé un stockage persistant des variables (quelques minutes).

    Pour faire ça, il lance un Thread qui fait un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    while (True)
            {
                // Mise à jour de chacune des listes
                // ....
     
                // Pause de quelques secondes avant de recharger les listes
                Thread.sleep(30000);
            }

    Et donc, ce Thread qui est une bloucle infinie tient à jour une variable qui est récupérée par le Thread principale de chaque page.

    Avez-vous déjà vu un fonctionnement comme ça ?
    Cet algo vous parait-il délirant ?
    Connaissez vous un moyen (librairie, composant, ...) permettant de faire de la mise en cache d'objet partagés en .net ?

    Merci d'avance.

  2. #2
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Vu comme ça ça ne parait pas délirant, juste la seule solution que le développeur a trouvé au moment où il a développé le code. Maintenant, c'est le résultat qui compte.

    Après si on cherche à améliorer les performances on peut mettre à jour les listes lorsque c'est seulement nécessaire. On peut imaginer que quand la liste est modifiée un bout de code informe les serveurs web de se mettre à jour (via une requête http).

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Expert confirmé

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Par défaut
    j'ai l'impression que le gars ne connaissait pas le cache d'asp.net

    http://msdn.microsoft.com/fr-fr/libr...=VS.80%29.aspx

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  4. #4
    Rédacteur

    Avatar de arnolem
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 852
    Par défaut
    Et ce système de cache fonctionne également avec une connexion en base de données ? L'idée serait de stocker une connexion pour la réutiliser

  5. #5
    Expert confirmé

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Par défaut
    Citation Envoyé par arnolem Voir le message
    Et ce système de cache fonctionne également avec une connexion en base de données ? L'idée serait de stocker une connexion pour la réutiliser
    Surtout pas, malheureux !!

    Une connection doit être ouverte le plus tard possible, et détruite le plus tot possible...sinon, tu risque de saturer ton serveur

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  6. #6
    Rédacteur

    Avatar de arnolem
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 852
    Par défaut
    Citation Envoyé par Philippe Vialatte Voir le message
    Surtout pas, malheureux !!

    Une connection doit être ouverte le plus tard possible, et détruite le plus tot possible...sinon, tu risque de saturer ton serveur
    C'est marrant ce que tu dis là. Peux-tu aller plus loin dans ta pensé ?

    Parce que l'application que je reprends, utilise ce principe des Thread avec une boucle infinie pour mettre en cache des listes de données mais également pour gérer un pool de connexion. Ce qui se passe c'est que ce Thread ouvre une 50ène de connexion à la base de données et les redistribue dès qu'un script en a besoin. Ensuite, la connexion est rendu.

    Vous trouvez ça également inutile ?

  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    948
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 948
    Par défaut
    Si tu n'as pas trop de données à stocker, tu peux utiliser des variable de session, dans lesquelles tu peux mettre ce que tu veux. Mais enfin typiquement une connection, ca se configure dans le web.config et tu en recrées une à chaque fois que tu fais des requetes, je ne vois pas trop l'interet de garder une même connection sur la durée (à la limite si t'as des tables temporaires, et encore...).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Persistance des données
    Par gdnico dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 16/05/2007, 17h31
  2. Réponses: 7
    Dernier message: 20/12/2006, 08h06
  3. [HTML] Tableau pour l'enregistrement des données
    Par ghyosmik dans le forum Balisage (X)HTML et validation W3C
    Réponses: 13
    Dernier message: 01/11/2005, 15h28
  4. Persistance des données en mémoire
    Par giviz dans le forum Architecture
    Réponses: 13
    Dernier message: 21/12/2004, 09h44
  5. [Strategie]persistance des données
    Par altropus dans le forum Persistance des données
    Réponses: 6
    Dernier message: 04/11/2004, 04h36

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