Optimisation requete sql MyPHPAnnuaire - Categorizator

WRInaute discret
Bonjour,

Je suis hébergé chez 1&1 en mutualisé. Il m'informe qu'un de mes sites consomment trop de ressources et m'invite à optimiser mes requêtes sql sous peine de supprimer mon compte.

Le site en question est un annuaire MyPHPAnnuaire - Categorizator dans sa version rewrité. (-http://www.itinerances.info)

Mais voilà, je n'y pige pas grand chose en sql. Quelqu'un a t-il déjà optimiser le script pour optimiser les requêtes ?

Ou quelqu'un pourrait-il me dire comment faire ?

1&1 me conseille de revoir les "Select"

Bon... Si quelque'un pouvait m'aider, ça m'éviterait peut être la suppression du compte. :wink:

Greg
 
WRInaute impliqué
Tu as meilleure temps de faire un système de cache :) Comme ça plus de SQL à chaque visite mais une fois tous les 1 ou 2 jours.

A+
 
WRInaute discret
1&1 vient de me recontater. J'avais fait quelques modifications (supression des bannières en rotation notamment) mais ils viennet de me bloquer ma bdd.

Ils m'ont envoyé quelques logs :

Code:
zgrep dbo1632708xx /var/log/anna.log* 
/var/log/anna.log:*** dbo1632708xx @infong306: 105019 Queries: 104940 
Selects, 12 Ins, 24 Upd, 43 Del, 1962 Connects 
/var/log/anna.log.0:*** dbo1632708xx @infong306: 43615 Queries: 43588 
Selects, 3 Ins, 20 Upd, 3 Del, 1094 Connects 
/var/log/anna.log.1.gz:*** dbo1632708xx @infong306: 166570 Queries: 
166533 Selects, 11 Ins, 21 Upd, 5 Del, 1454 Connects 
/var/log/anna.log.2.gz:*** dbo1632708xx @infong306: 59693 Queries: 59680 
Selects, 13 Upd, 758 Connects 
/var/log/anna.log.3.gz:*** dbo1632708xx @infong306: 64026 Queries: 64002 
Selects, 24 Upd, 1086 Connects 
/var/log/anna.log.4.gz:*** dbo1632708xx @infong306: 52604 Queries: 52585 
Selects, 1 Ins, 17 Upd, 1 Del, 985 Connects 
/var/log/anna.log.5.gz:*** dbo1632708xx @infong306: 52906 Queries: 52875 
Selects, 2 Ins, 27 Upd, 2 Del, 1065 Connects 
/var/log/anna.log.6.gz:*** dbo1632708xx @infong306: 86756 Queries: 86741 
Selects, 3 Ins, 10 Upd, 2 Del, 1183 Connects

J'aimerais comprendre ce que cela veut dire ? A quelle table ça renvoit ? Pouvez vous m'aider ?

Greg
 
WRInaute discret
Est-ce que mon problème peut venir d'un robot qui recharge les pages de façon répétitive ? Un hacker ?

Le site fait environ 900 - 1000 visiteurs / jour. ça ne devrait pas surcharger en toute logique les serveurs. L'annuaire que j'utilise est en plus très couramment utilisé et je n'ai jamais lu de problème de surconsommation avec le script

Greg
 
WRInaute occasionnel
pff ca me fait peur la, car je vais en lancer un sur un 1and1 mutualisé

c'est mal optimiser alors ?

narayana 70 requettes sql rien que pour la page d'indexe tu a dit sur ton topic ???

quel serais la solution ? le systeme de cache c'est quoi ?
 
WRInaute impliqué
narayana a dit:
je ne pourrai t'aider mais avec ce script j'ai eu de gros problèmes lorsque j'avais plus de 1000 sites et plus de 400 visiteurs/jour
https://www.webrankinfo.com/forum/t/phpmyannu-ou-categorizor-probleme-codage.60707/
mais tout le monde s'en est foutu :D

D'accord avec toi, c'est un excellent annuaire, qui consomme peu de bande passante, par contre en terme de hits et de requêtes, ça consomme :? . Je pense que c'est très bien pour un petit annuaire qui vient en soutien d'un site sur un thème précis mais pas pour un gros annuaire multi-catégories :wink: .
 
WRInaute impliqué
Daktari a dit:
narayana a dit:
je ne pourrai t'aider mais avec ce script j'ai eu de gros problèmes lorsque j'avais plus de 1000 sites et plus de 400 visiteurs/jour
https://www.webrankinfo.com/forum/t/phpmyannu-ou-categorizor-probleme-codage.60707/
mais tout le monde s'en est foutu :D

D'accord avec toi, c'est un excellent annuaire, qui consomme peu de bande passante, par contre en terme de hits et de requêtes, ça consomme :? . Je pense que c'est très bien pour un petit annuaire qui vient en soutien d'un site sur un thème précis mais pas pour un gros annuaire multi-catégories :wink: .

Cela fait toujours plaisir de voir que je ne suis pas le seul à avoir découvert cette faille :lol:

Pour blacklister une adresse ip, tu peux le faire via le htacess il me semble
 
WRInaute discret
Je pense faire un test avec JpCache pour voir ce que donne la consommation des requêtes. Enfin, dès que 1&1 débloque ma bdd.

Sinon, je virerais quelques reqûetes sql peut utiles

Greg
 
WRInaute discret
J'ai installé JpCache.

Je reviens vers vous par la suite pour vous dire le résultat sur les logs.

J'ai juste une petite question concernant les logs. Quelque peut-il me dire a quoi correspondande ces lignes :

Code:
213.223.201.96	[06/Dec/2006:09:36:16	+0100]	POST /submit_site.php HTTP/1.0	200	21836	www.itinerances.info	h**p://www.itinerances.info/submit_site.php?id_cat=0	Mozilla/4.6 [de] (Win95; I)

et

193.47.80.48	[06/Dec/2006:05:12:56	+0100]	GET /submit_site.php?action=meta_pass&id_cat=1089 HTTP/1.1	200	24240	www.itinerances.info	-	Exabot/3.0	-

Merci pour vos réponses. ça m'aidera a mieux lire mes logs

Greg
 
WRInaute discret
A quoi corresponde les passages pour le 1er log :

+0100] 200 21836

Sinon, j'ai aussi ajouté le script trace ip pour empêcher les aspirateurs de bouffer de la consommation.

Je vais aussi interdire certains robots inutiles (pour moi) comme FAST Enterprise Crawler consomme pas mal de bande passante

Greg
 
Nouveau WRInaute
C'est un log Apache, pas de trace de MySQL dedans hein ;)

+0100: fuseau horaire du serveur, ici GMT+1H

200: code de réponse du serveur (protocole HTTP), 200 indique qu'il n'y a aucun problème (exemples 30X: redirections, 40X:erreur avec la page, 50X: erreur serveur).

21836: taille de la page, en octets.
 
WRInaute discret
Merci madz06 pour ta réponse

Et comment sait-on d'apr-s un log qu'il fait référence à une connexion mysql ? L'info est-elle disponible depuis un serveur mutualisé ?

Greg
 
WRInaute impliqué
J'ai réalisé plusieurs optimisations
1) la requete PMA_info est effectuée sur toutes les pages.
=> je l'execute 1 fois et je mets le résultat en session. Ce qui me permet de ne plus la refaire

2) Créer une table ayant le nombre de site total, par catégorie...
=> Ce qui me permet de ne plus calculer sur chaque page ces informations (mise en session)

3) de rajouter dans la table site une colonne comportant l'id de la catégorie mère. Là on voit tout de suite l'intérêt (enfin pour ceux qui se sont penchés la-dessus) ;-)
 
WRInaute discret
Comme promis,

Je reviens vers vous pour faire le point :

J'ai installé jpcache + ajouté des infos dans le htacess d'après le script de Toulouse Rennaissancequi propose une solution pour réduire la taille du fichier... + supression des requêtes sql faisant référence à la date et au nombre de sites dans les catégories

Pour l'instant, mon hébegeur me dit que tout est ok du coté de la consommation sql mais suite à la suspension temporaire de mon compte, le site a dégringolé dans les profondeurs de Google et je n'ai pas encore récupéré mes stat d'avant.

Lorsque celles-ci seront revenus à niveau (d'ici peu j'espère :p ), je reviens sur le post...

Greg
 
WRInaute discret
Je pige pas... Ma base de données est à nouveau boquée :evil: malgré les modifs...

Je vais essayé d'en savoir un peu plus chez mon hébergeur mais je me demande si je ne vais pas partir aillleurs (ou je rencontrerai le même problème)

greg
 
WRInaute discret
Je lance un appel à tous ceux qui ont déjà optimisé leur annuaire Rewriteyourphpannuaire...

Pouvez vous nous faire part de vos travaux et leurs résultats.

Merci :wink:

Greg
 
WRInaute discret
Je viens de récupérer les logs sql (extraits) :

Voici un log relevé par mes collègues :
mysqladmin proc|grep dbo163270823
| 33674651 | dbo163270823 | 212.227.109.169:62123 | db163270823 | Query
| 1 | Opening tables | select cat_name,id_cat_mere from
categories_annu where id = '287' |
| 33678562 | dbo163270823 | 212.227.109.169:50175 | db163270823 | Sleep
| 7 | |
|
| 33678582 | dbo163270823 | 212.227.109.169:50205 | db163270823 | Sleep
| 7 | |
|
| 33678663 | dbo163270823 | 212.227.109.169:50299 | db163270823 | Query
| 1 | Opening tables | SELECT id FROM sites_annu WHERE id_cat =
'706' AND
| 33678668 | dbo163270823 | 212.227.109.169:50305 | db163270823 | Query
| 4 | Opening tables | select GZDATA, DATASIZE, DATACRC from
CACHEDATA where CACHEKEY='5413b5de2fbac10e917048d4c9ba3b10' an |
| 33678673 | dbo163270823 | 212.227.109.169:50311 | db163270823 | Query
| 3 | Opening tables | select GZDATA, DATASIZE, DATACRC from
CACHEDATA where CACHEKEY='5413b5de2fbac10e917048d4c9ba3b10' an |
| 33678680 | dbo163270823 | 212.227.109.169:50319 | db163270823 | Query
| 0 | Opening tables | SELECT id FROM sites_annu WHERE id_cat =
'291' AND
| 33678691 | dbo163270823 | 212.227.109.169:50342 | db163270823 | Query
| 2 | Opening tables | select GZDATA, DATASIZE, DATACRC from
CACHEDATA where CACHEKEY='5413b5de2fbac10e917048d4c9ba3b10' an |
| 33678692 | dbo163270823 | 212.227.109.169:50343 | db163270823 | Query
| 2 | closing tables | select GZDATA, DATASIZE, DATACRC from
CACHEDATA where CACHEKEY='5413b5de2fbac10e917048d4c9ba3b10' an |
| 33678701 | dbo163270823 | 212.227.109.169:50355 | db163270823 | Query
| 1 | closing tables | SELECT cat_name, can_add FROM categories_annu
WHERE id = '753' |
| 33678710 | dbo163270823 | 212.227.109.169:50366 | db163270823 | Query
| 0 | Opening table | DELETE FROM ip WHERE date <> '2007/01/10
19:16' |
| 33678713 | dbo163270823 | 212.227.109.169:50370 | db163270823 | Query
| 0 | Opening table | DELETE FROM ip WHERE date <> '2007/01/10
19:16'

Pouvez vous m'aider à les lire et me dire où vous voyez les anomalies. ça pourrait m'aider à trouver la soluce

Merci

Greg
 
Nouveau WRInaute
Bonjour à tous
Je remonte ce poste car j'ai éxactement le même souci avec les même log 2éme suspention.

Je me demande ci 1&1 save ce qu'ils font car dans le dossier log de mon FTP je ne trouve pas anna.log

Mon site est une base de Nuked Klan.
Pour reparler des robots google me prend pas mal j'ai l'impréssion il n'y a pas une possibilité de le désactiver ?

Je fais environ 1000 visites par jours voir 1400.
Dans mes stats en FAI y a googlebot ??? pourquoi?
ScreenShot005.jpg


Merci de vos réponses.
Séb
 
Discussions similaires
Haut