Nombre de connexions Mysql

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

herve01
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 124
Inscription: Mer Mar 03, 2004 20:54

Nombre de connexions Mysql

Message le Mer Avr 21, 2004 21:14

Bonsoir,

Je m'intéresse de plus en plus aux offres en mutualisé d'OVH. Mais je constate qu'ils n'autorisent que 3 connexions sql simultanées. Je voudrais savoir si c'est un peu juste pour un site avec environ 500 visiteurs / jours ou ci ça passe à l'aise (je précise que tous mes scripts sont optimisée : connexions ouvertes au + tard et fermées au + tôt et que je suis loin d'un PhpNuke).

Hervé

Haq
WRInaute accro
WRInaute accro
 
Messages: 2104
Inscription: Jeu Aoû 29, 2002 21:18

Message le Mer Avr 21, 2004 21:46

Tu peux prendre un 60gp sans souci... pour à peine 15 euros par an (mon site y était sans problème avec 1000 à 1200 visiteurs uniques par jour).

Si tu ne le fais pas déjà, je te conseille d'alléger un peu mysql en utilisant du cache.

aK.


Dr DLP
WRInaute passionné
WRInaute passionné
 
Messages: 579
Inscription: Sam Juin 28, 2003 23:42

Message le Mer Avr 21, 2004 21:48

Les connexions simultanées sont rarissimes avec des scripts faits correctement ( même sur phpnuke ) .
Ceci représente un accès à la base de données par deux utilisateurs au même moment , en sachant que la plupart des requêtes s'éxécutent en moins d'une milliseconde .

Moralité : statistiquement c'est très très largement suffisant !

yanhl
WRInaute passionné
WRInaute passionné
 
Messages: 793
Inscription: Jeu Déc 04, 2003 12:11

Message le Jeu Avr 22, 2004 8:15

ca commence à être chiant à partir de 3000 visiteurs/jours si tu as de grosses tables et quelques jointures.
Dans mon cas, j'ai du splitter en 2 bases pour limiter les cas de triple connexion simultanée. Ceci dit, c'est rare que ça arrive, mais ça arrive quand même occasionnellement.
Du coup, ça m'a souvent freiné dans mes ambitions : j'évite toute requête un peu lourde, et même toute requête tout court en déportant dans des tableau PHP ce qui aurait plutôt sa place en base.

Et du coup je passe sur un dédié dans pas longtemps :-)

herve01
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 124
Inscription: Mer Mar 03, 2004 20:54

Message le Jeu Avr 22, 2004 13:24

Merci pour vos réponses.

Je fais tout pour réduire le nombre de requêtes. Mais pour cela on est parfois obligé d'utiliser des jointures qui permettent de faire 1 seule requête au lieu de 2 ou +.

A partir de quand une requête est-elle considérée comme lourde ? Quand on fait un SELECT * FROM sur une table avec plusieurs milliers denregistrements ?

@+
Hervé


Dr DLP
WRInaute passionné
WRInaute passionné
 
Messages: 579
Inscription: Sam Juin 28, 2003 23:42

Message le Jeu Avr 22, 2004 16:51

Oui , si tu obtient un résultat de plus de 10.000 entrées , tu peux considérer que la requête est lourde :mrgreen:

Essaye d'éviter les SELECT * surtout , notamment si tu n'as besoin que d'un champ dans la table .
N'boulie pas non plus de vider les résultats en mémoire quand tu n'en as plus besoin .


WebRankInfo
Administrateur du site
Administrateur du site
 
Messages: 15905
Inscription: Ven Avr 19, 2002 19:51

Message le Jeu Avr 22, 2004 20:40

j'ai entendu qu'il était inutile de fermer la connexion ou de libérer la mémoire car c'était fait automatiquement à la fin des scripts PHP. Qu'en pensez-vous ?

par ailleurs les connexions permanentes sont-elles intéressantes point de vue perfo ?

Eservice
WRInaute accro
WRInaute accro
 
Messages: 1463
Inscription: Mer Sep 18, 2002 11:28

Message le Jeu Avr 22, 2004 21:21

Bonsoir,

herve01 a écrit:A partir de quand une requête est-elle considérée comme lourde ? Quand on fait un SELECT * FROM sur une table avec plusieurs milliers denregistrements ?

Tu peux remplacer le 'select *' par un 'select champ1, champ2 ....' (sauf s'il te les faut tous) parce que ça bouffe du temps.
Ensuite il faut savoir si un index est utile pour ta requête et s'il sera utilisé vraiment.

WebRankInfo a écrit:j'ai entendu qu'il était inutile de fermer la connexion ou de libérer la mémoire car c'était fait automatiquement à la fin des scripts PHP. Qu'en pensez-vous ?
non, tu libéreras toujours des ressources plus tôt, surtout avec un traffic conséquent.


WebRankInfo
Administrateur du site
Administrateur du site
 
Messages: 15905
Inscription: Ven Avr 19, 2002 19:51

Message le Jeu Avr 22, 2004 21:55

Eservice a écrit:
WebRankInfo a écrit:j'ai entendu qu'il était inutile de fermer la connexion ou de libérer la mémoire car c'était fait automatiquement à la fin des scripts PHP. Qu'en pensez-vous ?
non, tu libéreras toujours des ressources plus tôt, surtout avec un traffic conséquent.
tu l'as vérifié ou mesuré ?

Eservice
WRInaute accro
WRInaute accro
 
Messages: 1463
Inscription: Mer Sep 18, 2002 11:28

Message le Jeu Avr 22, 2004 22:46

Je n'ai pas besoin de le mesurer. Si le serveur php ferme les ressources à la fin d'un script c'est parce qu'il a une table de pointeurs ouverts sur les ressources ouvertes, qu'il parcourt pour les fermer les unes après les autres en fonction de leur type. Il est probable que chaque ressource fait référence à une structure différente selon sa nature (fichier, table ...). D'autant plus si c'est une table de base de données qui va consommer encore plus de ressources sur le serveur en question. La laisser ouverte jusqu'au dernier moment monoplise des ressources systèmes (au niveau de l'OS entre autres) inutilement.
Plus ton site est sollicité et plus les ressources mémoire et disque le seront.

Il me semble que la règle d'or est "on ouvre le moins possible et on ferme dès que possible". Les problèmes de bande passante et de hits ne sont pas forcément les plus critiques pour un hébergeur : les ressources mémoires et de connexion externe (socket) et interne (serveur applicatif et de base de données) posent souvent plus de problèmes.


WebRankInfo
Administrateur du site
Administrateur du site
 
Messages: 15905
Inscription: Ven Avr 19, 2002 19:51

Message le Jeu Avr 22, 2004 22:50

sauf si ouvrir et fermer une connexion MySQL prend un temps non négligeable ?

Eservice
WRInaute accro
WRInaute accro
 
Messages: 1463
Inscription: Mer Sep 18, 2002 11:28

Message le Jeu Avr 22, 2004 23:00

De toutes manières libérer une ressource prend du temps alors pourquoi la laisser ouverte pour rien ? surtout si sa libération laisse la place à un autre visiteur


mahefarivony
WRInaute accro
WRInaute accro
 
Messages: 11405
Inscription: Lun Oct 14, 2002 10:00

Message le Jeu Avr 22, 2004 23:43

je serai vraiment curieux de voir le benchmarking d'un serveur mysql.. ca doit etre rigolo a voir..

Eservice
WRInaute accro
WRInaute accro
 
Messages: 1463
Inscription: Mer Sep 18, 2002 11:28

Message le Ven Avr 23, 2004 10:55

WRI tu faisais allusion aux connexions persistantes ? Je n'ai pas mesuré mais ça m'étonnerait beaucoup que ça te fasse gagner un temps significatif, surtout s'il est sur la même bécane.
En plus ça peut poser un problème de mémoire : tu vas monopoliser des buffers de connexions en permanence comme si tu étais en période de charge tout le temps. Est-ce gênant dans ton cas ?

Si tu veux gagner du temps c'est les structures des tables et des index qu'il faut revoir (et les paramètres du serveur) . C'est facile à dire ...

herve01
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 124
Inscription: Mer Mar 03, 2004 20:54

Message le Ven Avr 23, 2004 11:07

La meilleure façon d'accélérer un site est d'optimiser les scripts et schémas de tables sql de manière à ce qu'ils consomment le moins de ressources possibles.
Ainsi Mysql sera moins sollicité, et les requêtes s'effectueront plus rapidement.

Sans oublier d'utiliser mysql_free_result(), mais uniquement à bon escient.

Hervé

Nombre de connexions Mysql

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

  • Analyse de popularité
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.
  • Indice de densité
    Cet outil vous permet de calculer l'indice de densité d'un mot-clé d'une page web. Il est calculé à la fois pour la balise TITLE, la balise META description et l'ensemble du texte de la page.
  • Analyse de similarité textuelle
    Cet outil vous permet de calculer la similarité entre 2 pages web. L'algorithme utilisé repose sur l'analyse des occurrences des mots (mais pas sur leur positionnement dans les pages). Google utilise cette notion à certains endroits dans son algorithme, mais de façon bien plus évoluée que ce petit outil... Avoir des pages trop similaires peut entraîner des problèmes d'indexation... Cet outil vous permettra peut-être de résoudre certains problèmes de contenus dupliqués.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités