Topic: Problema di esaurimento memoria su web server con sito in Django  (Letto 1004 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline gabs666

  • python unicellularis
  • *
  • Post: 2
  • Punti reputazione: 0
    • Mostra profilo
Salve a tutti, sono nuovo da queste parti...
Dilettante autodidatta in sviluppo di siti web...
Ho un problema: ho realizzato un sito con fw Django, pubblicato su webserver unbit.it..
Funziona tutto se non fosse che ultimamente continua a disattivarsi improvvisamente.
Per riattivarlo devo loggarmi sul webserver e "uccidere" i processi attivi.
L'assistenza del w server mi ha spiegato che per quanto difficile, alcuni processi esauriscono la mem a disposizione.
Mi suggeriscono di inserire una sys.exit() per fare ripristinare autonomamente il sito,
...ma sinceramente non ho la più pallida idea di come farlo !!!
Suggerimenti?
Grazie a tutti in anticipo !!!
gabs666

Offline masci

  • python sapiens
  • *
  • moderatore
  • Post: 684
  • Punti reputazione: 0
    • Mostra profilo
    • MasciBlog
Re: Problema di esaurimento memoria su web server con sito in Django
« Risposta #1 il: Giugno 25, 2009, 01:12 »
L'assistenza del w server mi ha spiegato che per quanto difficile, alcuni processi esauriscono la mem a disposizione.
Mi suggeriscono di inserire una sys.exit() per fare ripristinare autonomamente il sito,
...ma sinceramente non ho la più pallida idea di come farlo !!!
Se ti presenti nella sezione apposita fai cosa gradita alla community!

Per quanto riguarda il tuo problema, il primo passo è individuare in che punto nel codice la tua applicazione inizia a mangiarsi memoria (ammesso che sia quello il problema). Probabilmente trovato il memory leak basterà sistemarlo piuttosto che chiamare una sys.exit().

Offline gabs666

  • python unicellularis
  • *
  • Post: 2
  • Punti reputazione: 0
    • Mostra profilo
Re: Problema di esaurimento memoria su web server con sito in Django
« Risposta #2 il: Giugno 25, 2009, 01:21 »
Salve Masci,
grazie per la risposta.
scusami se nn mi sono presentato nel posto esatto....
come faccio a capire a che punto si esaurisce la mem? Nel file stdrr_log indica un errore di memoria
in corrispondenza di processi differenti.
Preciso che all'interno nn c'è praticamente nulla di pesante...
Cosa vuol dire trovare il memory leak?

Offline masci

  • python sapiens
  • *
  • moderatore
  • Post: 684
  • Punti reputazione: 0
    • Mostra profilo
    • MasciBlog
Re: Problema di esaurimento memoria su web server con sito in Django
« Risposta #3 il: Giugno 25, 2009, 10:12 »
come faccio a capire a che punto si esaurisce la mem?
Prima di tutto controlla qui:
http://docs.djangoproject.com/en/dev/faq/models/#why-is-django-leaking-memory

Poi o procedi "a occhio", rileggendoti il codice e cercando di capire se c'è qualche linea "sospetta", oppure ti affidi a qualche tool che lo fa al posto tuo, prova a leggere ad esempio questo post:
http://perro.si/profiling-django-applications

Nel file stdrr_log indica un errore di memoria
in corrispondenza di processi differenti.
Preciso che all'interno nn c'è praticamente nulla di pesante...
Quali sono questi processi? Potresti postare un pezzettino di log?
Il fatto che non ci sia "nulla di pesante" è abbastanza soggettivo, per combinare qualche guaio basta un ciclo while mal scritto.

Cosa vuol dire trovare il memory leak?
Il memory leak è un fenomeno per cui il tuo programma consuma memoria in maniera anomala; generalmente la colpa non è del programma ma del programmatore  ;)

Offline ubuntu_of_fortune

  • python sapiens
  • *
  • moderatore
  • Post: 745
  • Punti reputazione: 3
    • Mostra profilo
Re: Problema di esaurimento memoria su web server con sito in Django
« Risposta #4 il: Giugno 25, 2009, 19:13 »

Prima di tutto controlla qui:
http://docs.djangoproject.com/en/dev/faq/models/#why-is-django-leaking-memory

Devo dire che non mi era mai capitato di leggere questo pezzo di documentazione sul reset delle query e sul leaking di memoria potenziale di Django :)
Non si finisce mai di imparare! ;)

Grazie masci per l'ottima e pertinente segnalazione  :batti5: