2015-06-02 6 views
10

Ho un sito web sociale già sviluppato e funzionante come "Facebook".Come aumentare la velocità di esecuzione e ridurre i tempi di esecuzione di un sito Web sociale come "Facebook" sviluppato in PHPFox?

Questo sito Web è stato sviluppato utilizzando PHPFox v3.0.7 (che è una piattaforma di social network creata in php).

Le funzioni del sito Web funzionano correttamente, nessun problema con loro.

Il problema principale, grave e serio che sto affrontando con il sito Web è la velocità di esecuzione lenta. Per qualsiasi tipo di operazione ci vuole troppo tempo e l'utente deve aspettare così tanto tempo. Questo irrita davvero l'utente e sta compromettendo le prestazioni di un sito web.

Così, ho fatto ricerche su "Facebook", il sito Web di social network più grande del mondo sviluppato in PHP. Se 'Facebook' può essere eseguito a velocità elevata nonostante il carico utente pesante e le operazioni continue perché il mio sito non è possibile?

La prima cosa è il sito è sviluppato utilizzando un framework chiamato così l'intera progettazione di database 'phpFox', caching e tutte le altre cose sono state gestite dal quadro stesso, non posso cambiare le impostazioni del quadro ma alla fine ho voglio aumentare la velocità di esecuzione del mio sito web.

Quindi, come devo raggiungerlo? Se possiedi una soluzione migliore della categoria, forniscimi la guida.

Qualsiasi tipo di aiuto sarebbe molto apprezzato.

Per favore sentitevi liberi di chiedermi qualcuna delle domande che avete riguardo al problema che sto affrontando.

Grazie.

+1

** Se "Facebook" può essere eseguito a velocità elevata nonostante il carico utente pesante e le operazioni continue, perché il mio sito non può essere utilizzato? - Sospetto che abbiano speso un po 'di più sull'hardware di quanto tu abbia accesso. Inoltre, il motore di database che stai utilizzando può fare una notevole differenza. Dato che il loro driver DB predefinito è solo uno MySQL (che è deprecato, dovrebbe almeno usare l'interfaccia mysqli), non darei troppa speranza a un miglioramento stellare. Informazioni DB qui: http://store.phpfox.com/kb/article/622/using-the-database-query-method – enhzflep

+0

Devo chiedere a destra del gate quali sono le risorse del server? – Brian

+0

Dai un'occhiata a questo sito web: http://hhvm.com/ – rafaelphp

risposta

5

Ci sono diversi modi per aumentare la velocità.

  1. Utilizzando CDN,
  2. Abilita cache,
  3. Utilizzando server di bilanciamento del carico,
  4. Abilita la compressione,
  5. attivazione di bootstrap,
  6. Optimize database e db conducente

È possibile utilizzare il seguente metodo di accelerazione del server

  1. Abilitazione mod_deflacte
  2. Abilitazione memchached
+1

Yu potrebbe usare cose come speedtrap, munin, jmeter per monitorare dove sono le parti più lente del tuo codice. Vorrei aggiungere anche alcuni strati memcached lei e là, possibilmente un database noSQL come CouchBase per cose che sono correlate ai documenti, e se tutto ciò non è sufficiente, allora probabilmente cambierei del tutto il framework. HipHop o Phalcon potrebbero essere una cosa da guardare. – PEM

3

Ho affrontato lo stesso problema in precedenza quando si lavora su phpFox e la maggior parte delle cose che possono essere gestite dal pannello di controllo di amministrazione.

Utilizzando memcached, ho risolto il problema di velocità. Puoi seguire i semplici passaggi menzionati nella knowledge base di PHPFox e spero che troverai qualche soluzione.how-to-enable-memcached

3

Innanzitutto facebook utilizza HHMV (HipHop Virtual Machine) che è un motore di esecuzione per PHP, cioè loro codice PHP viene dapprima trasformato in HipHop bytecode intermedio (HHBC), che viene poi tradotto in modo dinamico nel x86-64 codice macchina, ottimizzato e eseguito in modo nativo.

Così ogni volta che si accede a Facebook, si esegue semplicemente il codice della macchina altamente efficace .

Presumo vostro sito non hanno HHMV, quindi ecco alcuni alcuni strumenti & suggerimenti per aumentare PHP siti web in esecuzione,

  1. memcached
  2. cassandra
  3. Ottimizzazione del driver db
  4. Utilizzando msqli invece di mysql
  5. Utilizzo di un server con una configurazione migliore.
  6. Utilizzo di versioni minificate di jquery & bootstrap (ad es. Bootstrap.min.js & jquery.min.js).
1

Ciao Nella tua domanda principale, ciò che stai chiedendo è il consiglio per aumentare le prestazioni della tua applicazione PHPFox. Considerando che, nella sezione nota diversa, si sta cercando la soluzione per inviare le notifiche push.

Risponderò a te riguardo "Aumentare le prestazioni del tuo sito web".

Come è necessario tenere presente, l'ottimizzazione delle prestazioni è il compito più importante. Ha varie fasi elencate da "@Myself Malay". Alcuni di loro possono essere fatti velocemente e altri impiegheranno del tempo. Quindi è necessario conoscerli, dare la priorità a loro. Ad esempio: la riduzione delle richieste di file JS e CSS, caricandole tramite la CDN, può essere eseguita rapidamente. Anche il servizio delle risorse (HTML, CSS, JS) in formato compresso (gzip) può essere fatto rapidamente.

L'ottimizzazione delle query richiederà molto tempo. Abilitare la cache dovrebbe essere veloce. Se si desidera stabilire i bilanciatori del carico, ci vorrà del tempo.

Qui, sto aggiungendo alcuni link di riferimento per quanto riguarda PHPFox, che ti aiuterà.

  1. http://www.ipragmatech.com/phpfox3-performance-xcache-apc-memcached.html#.VXkzXt93M_M
  2. How to optimize your database tables in PHPFox
  3. Speedup PHPFox V3
  4. PHPFox - Optimization Settings

Nota: Alcune delle modifiche possono richiedere la modifica dei file di base. Fai attenzione, mentre così facendo renderà molto difficile l'aggiornamento automatico. Prendi sempre il tuo codice e il backup del DB durante la modifica dei tuoi file core. Crea un documento sulle modifiche che hai fatto quali file, dove, perché ecc., Che ti aiuteranno a riapplicare tutte quelle modifiche di nuovo, in caso di aggiornamento del codice alla nuova versione.

Qui di seguito, sto aggiungendo alcuni dei link, che vi aiuterà a comprendere l'ottimizzazione delle prestazioni al livello successivo

  1. Books for Building Scalable Web Applications? (DB Performance/Tuning, Networking, General Performance, etc.)
  2. Scalability and Performance of Web Applications, Approaches?

Il mio libro preferito è: Scaling PHP Applications by Steve Corona. Questo libro è il miglior riferimento mai disponibile per gli sviluppatori PHP.

Anche se non sono in grado di fornire una soluzione diretta al problema, spero che questo aiuti in una certa misura. Tutto il meglio :-)

1

Prima di tutto, smetti di confrontare il tuo sito Phpfox con Facebook. Facebook ha centinaia di migliaia di programmatori che lavorano giorno e notte per mantenere alte le prestazioni. È una verità sfavorevole che PHP sia un linguaggio di scripting lato server lento. Se il tuo sito migliora, le prestazioni diminuiscono. Fortunatamente, ci sono alcuni strumenti disponibili che possono essere utilizzati per aumentare le prestazioni generali del tuo sito web. Alcuni di essi sono Memcached, Cassendra, Varnix ecc. È possibile utilizzare le reti CD per servire i dati più velocemente. La scelta di un buon server di hosting aiuta anche a rendere il tuo sito pronto per il traffico intenso. Facebook utilizza oltre 100 tecnologie esclusive per mantenere il sito con una velocità rispettabile. Hiphop PHP è una tecnologia sviluppata dalla società stessa e viene utilizzata per compilare gli script PHP più velocemente di qualsiasi compilatore C++ nativo. Hiphop rende i codici PHP più veloci del 30-50%. Bene, HHVM è un'alternativa a Hiphop PHP ed è disponibile gratuitamente ma richiede nginx. Pensaci ancora, passare da Apache a nginx non è una buona decisione se sei solo un principiante.

Problemi correlati