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

Requêtes MySQL Discussion :

Besoin d'un avis pour max_connections


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 164
    Points : 67
    Points
    67
    Par défaut Besoin d'un avis pour max_connections
    Salut,

    Voilà, je souhaite augmenter le nombre maximum de connexion de mysql (il arrive à être atteint) et le passer de 100 à 250.
    Je dispose d'un serveur P4 à 2.4Ghz et 1Go de Ram, est-ce que je peux sans souci faire cette augmentation?
    Autre question, juste pour confirmation : il me suffit juste d'ajouter les lignes suivantes dans my.cnf :
    [Mysqld]
    set-variable=max_connections=250
    et de redémarer mysqld pour effectuer l'augmentation?
    Merci pour vos conseils
    Simo'

  2. #2
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Salut,

    Est-ce un serveur MySQL dédié ou un serveur Web ?
    250 connexions simultanées ça me parait beaucoup, l'intérêt étant de fixer un plafond suffisamment bas pour éviter de mettre à genoux le serveur.

    En ce qui concerne la syntaxe tu peux enlever le set-variable=. Il est aussi possible de modifier le max_connections à la volée avec un SET GLOBAL max_connections=xxx.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 164
    Points : 67
    Points
    67
    Par défaut
    c'est un serveur web dédié, on est les seuls deçus.
    Le problème c'est que certains lundi matin : 1040 too many connection pendant plusieurs heures...

  4. #4
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Il pourrait être utile de faire un SHOW PROCESSLIST pour voir s'il n'y a pas de connexions fantômes ou bloquées. Tu utilises des connexions persistantes ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 164
    Points : 67
    Points
    67
    Par défaut
    Non je n'utilise pas de connexion peristante et le show processlist ne montre pas de connexions fantômes ou bloquées.
    Par contre pour information, on est monté à +140requetes/secondes quand tout a bloqué, là on est retombé à +-24requetes/secondes. Les scripts sont optimisés et on ne peut pas faire moins de requete.
    J'ai peur qu'un jour ça ne monte encore une fois en charge et que je ne sois pas là pour surveiller et intervenir si besoin.

  6. #6
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Moi je mettrais 150 ou maxi 200 dans un premier temps. Par contre ça risque de ramer lors des pics de fréquentation. Enfin ça dépend aussi s'il y a beaucoup d'écritures dans la base, ou une majorité de lectures...

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 164
    Points : 67
    Points
    67
    Par défaut
    C'est surtout du select puis insert puis change db.

    Mais, par curiosité, ils utilisent quoi les grands compte comme meetic, cdiscount, kelkoo, etc.?
    De l'Oracle? Je serai curieux de le savoir.
    Simo'

  8. #8
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 414
    Points : 671
    Points
    671
    Par défaut
    Ce n'est pas le SGBDR qui est en cause dans ton cas mais la methode d'acces qui n'est pas bonne je pense.

    Le PHP ne permet pas comme le Java de faire des pools de connexions à la base de données , ce qui oblige à faire une connexion à chaque requete (beurk !!!! ) d'où ce nombre énorme de connexions simultanées particulièrement préjudiciables pour la performance globale du serveur .

    En effet, quelle est l'opération la plus longue dans une page PHP, outre l'interprétation du code PHP, c'est la connexion à la base de données.

    En J2EE, les connexions sont persistantes dans le pool et toutes les requetes passent dans ces tuyaux. Pas d'open et pas de close, juste du SQL à exécuter donc très rapide.

    J'ai déjà vu des applications avec plus de 1000 utilisateurs simultanées fonctionner parfaitement avec un pool JDBC de 100 à 120 connexions à la base. 8)

    Enfin, bon si il y avait que ca mais en PHP, peu de monde fait du SQL dynamique, tout le monde passe ses paramètres en statique alors qu'en Java, la majorité utilise bien des PreparedStatement dynamiques...
    Enfin, bref je devis !

    Maintenant, si tu es obligé d'augmenter parce que cette méthode d'accès t'est forcée par le produit, ben j'ai envie de dire "pas le choix"...

    Enfin, pour tes dernieres questions, qui utilise quoi , je te renvoie ce tableau sur les Parts de marché 2004

    Oracle 41,3%
    IBM UDB/DB2 30,6%
    Microsoft 13,4%
    Sybase 3,1%
    NCR Teradata 3,1%


    On voit donc tout de suite qu'il y a de grandes chances pour que les sites dont tu parlais utilisent un des 3 premiers... 8)

  9. #9
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    PHP propose des connexions persistantes qui sont un peu similaires, mais c'est vrai qu'en pratique ça ne fonctionne pas très bien et ça peut générer beaucoup de connexions zombies (surtout avec Apache).

    Par contre permets-moi de bémoliser les problèmes que tu évoques car d'une part le serveur de bases de données et le serveur Web sont sur la même machine donc l'overhead de connexion est moindre, et d'autre part MySQL possède un cache qui lui permet de réutiliser les threads des connexions précédentes (à ce propos simoryl tu pourrais augmenter la variable thread_cache_size). Cf http://jeremy.zawodny.com/blog/archives/000173.html

  10. #10
    Nouveau Candidat au Club
    Inscrit en
    Avril 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Salut à tous,
    je suis peut-être sur un vieux post, mais peut-être quelqu'un pourrait-il quand même me repondre, je développe en php, et je suis incapable d'executer plus de 10 connexions du même utilisateur à la suite. La propriété max_connections est à 10 pour cette utilisateur. Mais n'est-ce pas la propriété du nombre maximum de connexion simultannée. Pourtant je fermer ma connexion apres chaque utilisation. Je comprend rien, si quelqu'un a une réponse, merci d'avance à ceux qui me repondront. James

    PS : J'utilise MySQL 4.1.14, PHP 5.0.5 et Apache 2.0.55

    Il m'est impossible d'executer cette page plus de 10 fois sans avoir le contenu de ma requete a chaque fois :

    <html><head><title>Moniteur MYSQL</title>
    <style>table{font-family:verdana;font-size:8pt}</style>
    </head><body>
    <center><table border=0 cellspacing=0 cellpadding=0><tr><td valign=top>
    <table width=90% border=1 cellspacing=0 cellpadding=0>
    <?
    $conn = mysqli_connect('localhost', 'dst', 'dst');
    $result = mysqli_query($conn,'SHOW STATUS');
    $nb = 0;
    while ($row = mysqli_fetch_assoc($result)) {
    $nb = $nb+1;
    if (($nb == "29") || ($nb == "57") || ($nb == "85"))
    {
    print "</table></td><td valign=top><table width=90% border=1 cellspacing=0 cellpadding=0>";
    echo '<tr><td>&nbsp;' . $row['Variable_name'] . '</td><td><b>&nbsp;' . $row['Value'] . "</td></tr>";
    }
    else
    {
    echo '<tr><td>&nbsp;' . $row['Variable_name'] . '</td><td><b>&nbsp;' . $row['Value'] . "</td></tr>";
    }
    }
    mysqli_close($conn);
    ?>
    </table></td></tr></table></body></html>


    Désolé si je suis hors sujet

Discussions similaires

  1. Besoin de votre avis pour nouveau processeur
    Par Actarus9999 dans le forum Composants
    Réponses: 5
    Dernier message: 17/11/2007, 19h33
  2. Besoin d'un avis pour comparaison d'horaires
    Par Nixeus dans le forum MFC
    Réponses: 13
    Dernier message: 27/04/2007, 19h00
  3. Besoin de votre avis pour app réseau et données Excel
    Par BM42 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 15/12/2006, 10h42
  4. [UML] Besoin d'un avis pour un diagramme de collaboration
    Par skystef dans le forum Autres Diagrammes
    Réponses: 2
    Dernier message: 26/04/2006, 14h51

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