Back to top

Autore Topic: Down momentanei  (Letto 5682 volte)

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Down momentanei
« il: 07 Apr 2012, 11:35:23 »
Ciao a tutti,
mi sto arrovellando negli ultimi tempi con un mio sito. Soffre infatti di down momentanei, che credo che sia il server che si riavvia o cose del genere (è un vps managed, perchè non me ne intendo troppo di questo aspetto). Questo sito fa dalle 7.000 alle 20.000 visite al giorno, ma i down arrivano anche di notte o in momenti di scarsissimo traffico, mentre magari regge quando dentro ci sono 250-300 utenti contemporaneamente.

Ho scritto all'assistenza che mi ha risposto in questo modo (per altro dicendomi che non risolverei il problema facendo un upgrade di ram o altro). Ho capito che c'è questa query che mi succhia un sacco di risorse e fa sballare il server. Quello che non saprei fare è risolvere il problema! :p Suggerimenti?

 Hello,
I have checked the server in detail. I could find that the httpd was creating large number of semaphore arrays. Please see the results below.
--
root@host [~]# ipcs -s | head
------ Semaphore Arrays --------
key semid owner perms nsems
0x00000000 41025536 nobody 600 1
0x00000000 41058305 nobody 600 1
0x00000000 41091074 nobody 600 1
0x00000000 41123843 nobody 600 1
0x00000000 62029828 nobody 600 1
0x00000000 62062597 nobody 600 1
0x00000000 62095366 nobody 600 1
root@host [~]# ipcs -s | wc -l
56
--
I have removed the semaphores and restarted the Apache now. Please see the results below.
--
root@host [~]# ipcs
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
------ Semaphore Arrays --------
key semid owner perms nsems
0x00000000 112099328 nobody 600 1
0x00000000 112132097 nobody 600 1
0x00000000 112164866 nobody 600 1
0x00000000 112197635 nobody 600 1
------ Message Queues --------
key msqid owner perms used-bytes message
--
On further checking the server, I could see that the MySQL queries associated with the database "zonawres_zwdb" is causing the issue. Please see the results below.
--
root@host [~]# mysqladmin proc stat
+----------+---------------+-----------+---------------+---------+------+----------------------+------------------------------------------------------------------------------------------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----------+---------------+-----------+---------------+---------+------+----------------------+------------------------------------------------------------------------------------------------------+
| 12700853 | zonawres_zwus | localhost | zonawres_zwdb | Query | 0 | Copying to tmp table | SELECT jg.id,
jg.catid,
jg.imgthumbname,
jg |
| 12700854 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 3 | | |
| 12700855 | zonawres_zwus | localhost | zonawres_zwdb | Query | 0 | Copying to tmp table | SELECT jg.id,
jg.catid,
jg.imgthumbname,
jg |
| 12700856 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 3 | | |
| 12700857 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 3 | | |
| 12700858 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 3 | | |
| 12700859 | zonawres_zwus | localhost | zonawres_zwdb | Query | 0 | Copying to tmp table | SELECT jg.id,
jg.catid,
jg.imgthumbname,
jg |
| 12700863 | zonawres_zwus | localhost | zonawres_zwdb | Query | 0 | Copying to tmp table | SELECT jg.id,
jg.catid,
jg.imgthumbname,
jg |
| 12700864 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 1 | | |
| 12700865 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 0 | | |
| 12700879 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 0 | | |
| 12700882 | zonawres_zwus | localhost | zonawres_zwdb | Sleep | 0 | | |
| 12700883 | root | localhost | | Query | 0 | | show processlist |
+----------+---------------+-----------+---------------+---------+------+----------------------+------------------------------------------------------------------------------------------------------+
Uptime: 8125841 Threads: 13 Questions: 262269011 Slow queries: 2970 Opens: 272680 Flush tables: 1 Open tables: 64 Queries per second avg: 32.276
--
At the end of this query, you can see that the MySQL function "ORDER BY rand() ASC LIMIT" is executed. This query will cause performance overheads and this query can be optimized.
Please visit the following links to know more about this.

Please contact a database programmer to optimize this query so that it will use minimum amount of server resources.
Please let us know if you have any further concerns.
« Ultima modifica: 07 Apr 2012, 12:18:39 da 56francesco »

mau_develop

  • Visitatore
Re:Down momentanei
« Risposta #1 il: 07 Apr 2012, 12:23:13 »
mmhh questo non è joomla ..ma qualche estensione che hai installato.
Quelo che ti ha fatto vedere lui lo vedi anche tu se abiliti il debug

M.

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re:Down momentanei
« Risposta #2 il: 07 Apr 2012, 18:22:55 »
e come potrei fare a capire qual'è l'estensione?  :(

mau_develop

  • Visitatore
Re:Down momentanei
« Risposta #3 il: 07 Apr 2012, 19:16:44 »
Quello che ti ha fatto vedere lui lo vedi anche tu se abiliti il debug

lo hai fatto?

Slow queries: 2970
..dovresti vedere qualcosa

M.

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re:Down momentanei
« Risposta #4 il: 07 Apr 2012, 20:36:00 »
lo farò stanotte per evitare di dare spettacolo ai lettori :p , quindi devo cercare dove spuntano queste stringhe e si dovrebbe capire qual'è l'estensione?

mau_develop

  • Visitatore
Re:Down momentanei
« Risposta #5 il: 07 Apr 2012, 21:06:48 »
puoi anche farlo in locale, magari tenendo la massima sensibilità nel reporting di errori nel php.ini.

sicuro che tutti i componenti installati sono corretti per la versione di joomla e per le caratteristiche dell'ambiente server?
non è che si genera una richiesta impossibile che va in loop?

se usi firebug ti da qualche errore dom?

M.
« Ultima modifica: 07 Apr 2012, 21:09:56 da mau_develop »

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re:Down momentanei
« Risposta #6 il: 07 Apr 2012, 22:04:26 »
I componenti sono sicuramente compatibili al 100% con la mia versione di joomla, per quanto riguarda l'ambiente server non ne ho la certezza (a volte ci sono componenti che richiedono versioni più o meno avanzate di php o cose del genere, ma penso che il mio vps abbia tutto abbastanza aggiornato).

Posso anche incollare qui il report del debug che ho appena fatto se vuoi.

Tra parentesi,  seguendo quello che dicevano dal supporto del mio host, ho cercato nel debug ORDER BY rand e ho trovato che l'estensione che fa questo tipo di interrogazioni è "joomimage".
Secondo voi devo dedurre che è lei l'estensione che spreca le risorse maggiori?

Se non è così, mi spieghi bene come faccio a trovare degli errori dom con firebug? Non l'ho mai fatto, ne so cosa sia un errore dom  :-[
« Ultima modifica: 07 Apr 2012, 22:09:26 da Reyad »

mau_develop

  • Visitatore
Re:Down momentanei
« Risposta #7 il: 07 Apr 2012, 22:31:56 »
ok, allora prova a disabilitare quell'estensione e magari chiedi all'hoster se è cambiato qualcosa,... visto che è gentile approfittane :)
una volta determinato che è questa estensione poi andiamo a vedere il perchè.

Posso anche incollare qui il report del debug che ho appena fatto se vuoi.
-------------------------------------------------------------------------------------------------------
solo la riga che indica il totale tempi/query etc ... non tutto il dump che sarà lunghissimo

M.

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re:Down momentanei
« Risposta #8 il: 07 Apr 2012, 23:04:16 »
intendi questa parte?

Application afterLoad: 0.000 seconds, 0.24 MB
Application afterInitialise: 0.067 seconds, 3.36 MB
Application afterRoute: 0.089 seconds, 4.29 MB
Application afterDispatch: 0.114 seconds, 5.58 MB
Application afterRender: 1.004 seconds, 10.93 MB
Utilizzo Memoria
11552540



mau_develop

  • Visitatore
Re:Down momentanei
« Risposta #9 il: 07 Apr 2012, 23:14:57 »
ummhh forse ricordo male io ..ma non c'è qualcosa che riguarda le query? il numero il tempo di esecuzione...

quello che hai postato è abbastanza normale, credo che il problema stia in qualche query ajax

vabbè prova a disabilitare l'estensione e vedere se sul server cambia qualcosa.

M.

Offline 56francesco

  • Fuori controllo
  • *
  • Post: 29585
  • Sesso: Maschio
    • Mostra profilo
Re:Down momentanei
« Risposta #10 il: 07 Apr 2012, 23:15:22 »
perchè non metti un link al sito che gli si da una occhiata?
(uso XP perchè win98 non si installa) 
PS: non sono un dipendente dello sbonzor quindi è necessario un "per favore" alla richiesta e un "grazie" alla risposta, sempre! PPS: non scrivo mai per primo in MP, in caso contrario chiedimi una conferma, Grazie.

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re:Down momentanei
« Risposta #11 il: 07 Apr 2012, 23:16:00 »

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re:Down momentanei
« Risposta #12 il: 07 Apr 2012, 23:48:19 »
Aggiungo che facendo il debug con e senza il modulo delle immagini di cui sospettavo, ho verificato due cose:
1- il numero di query scende da 45 a 32
2- il Application afterRender scende
da Application afterRender: 1.004 seconds, 10.93 MB a
0.649 seconds, 8.40 MB
3- non ci sono più delle query con "ORDER BY rand() ASC LIMIT", ammesso che sia davvero questo ciò che pesa.

ho chiesto all'assistenza del mio host se riscontrano ancora il problema. Secondo voi è possibile che sia tutto qui?

mau_develop

  • Visitatore
Re:Down momentanei
« Risposta #13 il: 08 Apr 2012, 15:24:33 »
beh, non è cambiato moltissimo, quello che mi interessava era qs:

il numero di query scende da 45 a 32 ... prendi pure 45 query... come diventano 3000? (Slow queries: 2970)
..per vedere le slow queries bisogna abilitarne il logging nel mysql, te lo dico semmai vuoi fare dei test in locale.

per qs motivo sarebbe interessante sentire l'hoster cosa cambia per lui.

...sinceramente sin dal primo post ti avrei suggerito di metter mano a quel rand() nella query... nn mi piace... però in informatica non si può andare per sensazioni, bisognerebbe analizzare che fa, perchè lo fa così... può darsi che sia scritto male... può darsi che non sia quello il problema...

M.

Offline Reyad

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re:Down momentanei
« Risposta #14 il: 16 Mag 2012, 21:17:54 »
scusate se rispondo dopo poco tempo, ma i down si ripresentano sempre più random. Ho tolto alcuni moduli e la cosa sembra essere vagamente migliorata, solo che mi fa sti down alle 4 di notte quando sul sito ci saranno tipo 20 persone... mi sembra strano!


 



Web Design Bolzano Kreatif