Aller au contenu

Eviter le trop d'accès MySql


Neoboot

Sujets conseillés

Salut tout le monde,

Tout le monde a déjà dû avoir des problèmes de "too many user....." ou bien "Max allowed user....." sur son site, dû à des maintenances par exemple. Le problème, cest quaujourdhui la plupart des sites sont basés sur les base de donnée, donc le gros problème est que si on na pas accès à la base de donnée on na pas accès au site. :(

Voir l'article : explications, code, tout y est.

En esperant avoir aidée quelqu'un :smartass:

Modifié par Neoboot
Lien vers le commentaire
Partager sur d’autres sites

Quels sont les inconvénients d'un tel système ? Notamment en terme de "temps" d'exécution ? Y'a t'il une perte de performance avec un grand nombre d'utilisateur simultanés ?

Lien vers le commentaire
Partager sur d’autres sites

Pour l'instant je n'est pas encore assez de recul, mais je trouve que l'affichage des pages est légerement plus rapide avec se systeme qu'avec un acces à la base...

Et qui plus est je n'est plus de probleme de "too many user...." :)

Je verrais dans quelque jours...

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Le cache est vraiment un système à mettre en place sur son site lorsque l'on veut faire apparaitre certains elements (extrait d'une base de données) et que c'est dernier n'evolue pas beaucoup comme une liste de rubrique , etc....

Pour c'est une solution à ne pas laisser de côté. :idea:

Par contre existe t il des class de cache disponibles sur le net. <_<

@+

Lien vers le commentaire
Partager sur d’autres sites

En fait, c'est une bonne idée.

A noter :

Fonction create :

Si le fichier n'existe pas, il est créé, et les données sont insérées dedans, alors que s'il existe mais que l'on ne dispose pas des droits pour le modifier, alors la fonction create renvoie 'non'

Les données inscrites effacent les données précédentes.

Fonction verif :

au lieu de

----

$new_time = filemtime($file);

$actuel_time = time();

if(($actuel_time - $new_time) > $temp){

----

on aurait pu mettre :

if ((time()-filemtime($file))> $temp){

puisque cela renvoie un booléen.

et donc dans le meme ordre d'idée, mettre :

return ((time()-filemtime('a.txt'))> $temp);

Il serait intéressant de modifier légèrement ton script pour qu'il ne fasse pas le cache d'une seule table dans la base, mais le cache de la page d'accueil entière.

A+, Anonymus.

Lien vers le commentaire
Partager sur d’autres sites

Bah en faite on peut meme faire mieux :)

N'utilisez le cache que si l'access à la base est impossible, en faite, aujourd'hui avec les deux jours de recul que j'ai je trouve que mon site est super rapide à charger :)

Mais j'utilise le meme script mais un peu modifier ;)

Lien vers le commentaire
Partager sur d’autres sites

Bah en faite on peut meme faire mieux :)

N'utilisez le cache que si l'access à la base est impossible, en faite, aujourd'hui avec les deux jours de recul que j'ai je trouve que mon site est super rapide à charger :)

L'exécution d'une requête c'est quoi ? 5/100ème de secondes ? Faut avoir l'oeil pour constater que le site est plus rapide :cool2:

Pourquoi utiliser le cache uniquement lorsque la base n'est pas accessible ? Autant l'utiliser en permanence, par contre plutôt que de créer le cache toutes les x heures, autant le créer lorsqu'une modification est apportée à la base. Le contenu du cache est ainsi en temps "réel"...

Lien vers le commentaire
Partager sur d’autres sites

Bah moi je l'utilise pour les rubriques, etant donné que pour l'instant je n'est pas trop de rubrique à créer pas besoin j'actualise le cache des sous rubriques une fois par jour, et le cache pour les catégories mere, celle qui sont sur la page d'accueil, seulement une fois par semaine...

L'exécution d'une requête c'est quoi ? 5/100ème de secondes ?

Sur mon vieux Pc je t'assure que tu remarque la difference :)

Lien vers le commentaire
Partager sur d’autres sites

Sur mon vieux Pc je t'assure que tu remarque la difference :)

La requête est exécutée coté serveur, pas sur ton vieux PC

J'ai inscris 5 sites sur ton annuaire mais pour les 2 premiers après la soumission je tombais sur le lien "Retour au formulaire"... Je n'ai d'ailleurs pas reçu de mail pour ces 2 sites mais le nombre de sites en attente est bien passé à 5...

Lien vers le commentaire
Partager sur d’autres sites

Tien tien bugus serait-il present..... merci de m'avoir prévenu :up:

Pour les mails sa doit venir de OVH.... Défois je recois les mails le lendemain....

Modifié par Neoboot
Lien vers le commentaire
Partager sur d’autres sites

j'utilise aussi un systeme de cache sur certaines parties de mon site, et je trouve aussi que les pages se chargent plus vite qu'une requete.

perso, je ne met pas à jours toutes les 24 heures le cache, mais uniquement quand il y'a modifs de la base, et sur certaine portion.

en tous les cas c'est clair que ca aide bien :)

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...