Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Reiuky
    Registrato dal
    Jul 2008
    Messaggi
    371

    Problemi di prestazioni

    Ciao a tutti.
    Il prodotto su cui sto lavorando si sta rivelando molto gravoso per la macchina su cui gira.

    A prescindere dal fatto che è necessaria una rivisitazione del prodotto, volevo capire:

    1) A parità di dati estratti, (pezzo di codice html da inserire senza ulteriori elaborazioni) è più veloce leggere un file da file system o eseguire una query?

    2) Molte delle variabili sono di configurazione e non cambiano a seconda della sessione. Esiste un modo per caricarle una sola volta (tipo a inizio giornata) e poi condividerle tra tutte le istanze aperte?

    3) Idem del punto 2 con i programmmi: alcuni programmi php vengono sempre caricati. È possibile fare in modo che siano caricati una sola volta e poi richiamati di volta in volta per le varie richieste? In particolare il file ServiPagina.php viene chiamato sempre, quale che sia la pagina richiesta. Poi la pagina viene passata in Get. Non ha senso che ogni volta che l'utente chiama una pagina il programma venga ricaricato.

    Qualsiasi aiuto è ben accetto.
    A volte penso che, nel darci l'intelletto, la natura sia stata più sadica che generosa.

  2. #2
    mi sa che hai qualche problema con la teoria, sulle richieste web.
    Questa volta, più che un voto.. è favoreggiamento.

  3. #3
    Utente di HTML.it L'avatar di Reiuky
    Registrato dal
    Jul 2008
    Messaggi
    371
    Quote Originariamente inviata da Al_katraz984 Visualizza il messaggio
    mi sa che hai qualche problema con la teoria, sulle richieste web.
    Brava.
    Mi sai consigliare qualche link o qualche libro dove posso dissipare i miei dubbi?
    A volte penso che, nel darci l'intelletto, la natura sia stata più sadica che generosa.

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Eh... brutta bestia l'ansia da prestazione...

    Quote Originariamente inviata da Reiuky Visualizza il messaggio
    Ciao a tutti.
    ...
    1) A parità di dati estratti, (pezzo di codice html da inserire senza ulteriori elaborazioni) è più veloce leggere un file da file system o eseguire una query?
    File System, il db potrebbe risiedere su una macchina diversa e andrebbe aggiunto il tempo per far comunicare le due macchine, altrimenti direi irrilevante.
    2) Molte delle variabili sono di configurazione e non cambiano a seconda della sessione. Esiste un modo per caricarle una sola volta (tipo a inizio giornata) e poi condividerle tra tutte le istanze aperte?

    3) Idem del punto 2 con i programmmi: alcuni programmi php vengono sempre caricati. È possibile fare in modo che siano caricati una sola volta e poi richiamati di volta in volta per le varie richieste? In particolare il file ServiPagina.php viene chiamato sempre, quale che sia la pagina richiesta. Poi la pagina viene passata in Get. Non ha senso che ogni volta che l'utente chiama una pagina il programma venga ricaricato.
    Ogni richiesta che raggiunge il server è indipendente dalle altre, quindi devi ricaricare i dati per ogni richiesta.
    Al massimo puoi caricare dei dati in modo che per lo stesso utente che naviga sul sito, non le devi caricare ad ogni cambio di pagina, in pratica mettendo in sessione i dati che servono di continuo.

  5. #5
    061.gif ahhh pazzaaa!!

    libri o link non ne conosco.. ma vedi questa immagine..



    se segui le linee capisci che ogni richiesta è unica ("statica") e ogni richiesta fa fare il ciclo per ottenere un risultato.

    Caricare di base alcune funzioni e altre renderle disponibili solo quando servono non è possibile server side.. devi passare al client.
    Questa volta, più che un voto.. è favoreggiamento.

  6. #6
    Utente di HTML.it L'avatar di Reiuky
    Registrato dal
    Jul 2008
    Messaggi
    371
    Be'... questo lo sapevo. Mi chiedevo se era possibile in qualche modo dire al sistema "invece di caricarti tutto a ogni chiamata, tienti buono queste cose".

    Se non è possibile... Amen. Cerco altri modi per migliorare le prestazioni.

    Eh, sì: il nostro prodotto ha molta ansia da prestazioni. Al punto che, ogni tanto, non conclude (e crasha il server)
    A volte penso che, nel darci l'intelletto, la natura sia stata più sadica che generosa.

  7. #7
    Quote Originariamente inviata da Reiuky Visualizza il messaggio
    Be'... questo lo sapevo. Mi chiedevo se era possibile in qualche modo dire al sistema "invece di caricarti tutto a ogni chiamata, tienti buono queste cose".

    Se non è possibile... Amen. Cerco altri modi per migliorare le prestazioni.

    Eh, sì: il nostro prodotto ha molta ansia da prestazioni. Al punto che, ogni tanto, non conclude (e crasha il server)
    sicuramente è possibile caricare solo il necessario, bisogna capire come hai strutturato la tua applicazione.

    Quali sono i criteri di selezione che vuoi ottenere? chi ha bisogno di cosa? come fai a distinguere i caricamenti? come fa il sistema a decidere cosa caricare, in base a cosa dovrebbe caricare piu o meno funzioni?
    Questa volta, più che un voto.. è favoreggiamento.

  8. #8
    Utente di HTML.it L'avatar di Reiuky
    Registrato dal
    Jul 2008
    Messaggi
    371
    Quote Originariamente inviata da Al_katraz984 Visualizza il messaggio
    sicuramente è possibile caricare solo il necessario, bisogna capire come hai strutturato la tua applicazione.

    Quali sono i criteri di selezione che vuoi ottenere? chi ha bisogno di cosa? come fai a distinguere i caricamenti? come fa il sistema a decidere cosa caricare, in base a cosa dovrebbe caricare piu o meno funzioni?
    Il problema è che è tutto talmente interconnesso che tocchi la gestione degli utenti e non ti funziona più il debug delle tabelle. Visto che bisognerà demodulare parecchio cominciavo a capire cosa e dove si potesse migliorare.
    A volte penso che, nel darci l'intelletto, la natura sia stata più sadica che generosa.

  9. #9
    Quote Originariamente inviata da Reiuky Visualizza il messaggio
    Il problema è che è tutto talmente interconnesso che tocchi la gestione degli utenti e non ti funziona più il debug delle tabelle. Visto che bisognerà demodulare parecchio cominciavo a capire cosa e dove si potesse migliorare.
    allora rivedi la struttura del progetto..

    una classe di autoload aiuta,
    una classe ACL aiuta
    una classe di caching aiuta
    il codice con meno ripetizioni possibili aiuta....

    cosa intendi per "demodulare"?
    Questa volta, più che un voto.. è favoreggiamento.

  10. #10
    una classe di autoload serve per evitare di avere Nmila require_once o include sulla pagina, viene passato il nome della classe da caricare e lui va in cerca del file e lo carica

    class nomeClasse {} -> file: nomeClasse.php

    quando poi farai
    $classe = new nomeClasse();

    autoload carica in automatico il file della classe
    Autoloader::load( 'nomeClasse' ); // questo è di esempio l'autoloader si carica in automatico

    ACL = access control list
    lista di controllo degli accessi, ti permette di caricare solo quello che serve all'utente corrente.. se utente user vede solo pagine pubbliche oppure se utente admin vede sia le sezioni pubbliche che private o di amministrazione

    Cache:
    ripropone tutte o alcune parti di una pagina salvate su un file se non sono avvenute modifiche nei contenuti.. quindi prima di fare tutto il ciclo del programma verifica se è cambiato qualcosa nella pagina, se non è cambiato nulla prende i dati da un file e li ripropone identici

    il programma è scritto con pattern MVC o no? da come parli non sembra..
    Questa volta, più che un voto.. è favoreggiamento.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.