Modernizzare la progettazione del sito back-end

Nella corsa per portare il tuo sito web in cima alle classifiche di Google, la maggior parte del focus di un tipico team di sviluppo sarà sulle funzionalità di design di front-end destinate a far risaltare il sito rispetto ai suoi concorrenti.

Questo ha perfettamente senso, e in effetti il ​​front end del design del sito è dove si trova la maggior parte dell'azione. Ciò che non aiuta, tuttavia, è di trascurare il back-end da qualcosa di diverso dalla considerazione più superficiale. Ancor peggio sarebbe incorporare intenzionalmente funzionalità nel back-end che non forniscono alcun beneficio misurabile, o potrebbero persino funzionare a tuo danno.

Il problema è che molte delle idee che sono state applicate al design del back-end del sito Web non sono state aggiornate per riflettere i cambiamenti nell'ambiente operativo. Solo perché un vecchio DC-9 volerà non significa che sia ancora il modo migliore per viaggiare attraverso l'Atlantico, e la stessa logica può essere applicata alla tecnologia che guida i nostri siti web.

La tua architettura back-end fa la differenza per il tuo ranking di Google

Google si preoccupa di molte cose quando si tratta dell'esperienza utente, e può essere discernuto dalle informazioni fornite da Google che a loro importa più di questo rispetto all'interfaccia utente del tuo sito.

In altre parole, quando si tratta di ciò che interessa a Google di più, come funziona il tuo sito è molto più importante di come appare. Uno dei criteri chiave coinvolti nella valutazione di un sito da parte di Google è il tempo di caricamento della pagina, ed è abbastanza facile capire che alcune architetture sono più efficienti di altre.

Scelte hardware del server

Il primo collegamento in una catena molto lunga di decisioni è il server stesso. È difficile scegliere una configurazione hardware specifica da consigliare come la migliore perché ci sono così tante possibilità. Il leader di mercato è Hewlett-Packard, con circa il 52 percentuale della quota di mercato per i nuovi acquisti di server, ma questo potrebbe essere più a che fare con i prezzi che con l'efficienza.

Se hai i soldi per farlo, il secondo concorrente classificato, IBM, potrebbe effettivamente fornire il miglior valore in termini di ciò che ottieni per quello che paghi. L'IBM è ovviamente in circolazione da moltissimo tempo, e una cosa su cui questo produttore è molto bravo sta costruendo hardware altamente efficiente e affidabile.

Per le aziende più piccole, l'hardware non è una considerazione così importante perché non forniranno i propri server web, né leasing server dedicati. Ciò significa che non hanno il lusso di scelta che le società blue chip possono permettersi.

Windows o Linux?

Il sistema operativo scelto, d'altra parte, può avere un effetto critico sull'efficienza complessiva del tuo sito. Questa non è sempre la priorità per i responsabili IT. Il loro lavoro di solito non dipende da come si svolge il sito web aziendale. Avranno spesso maggiore preoccupazione per la rapidità e la facilità con cui è possibile impostare e implementare qualsiasi nuova tecnologia.

Non c'è dubbio che l'impostazione di un server Windows è di solito molto più semplice di un server Linux, anche se il divario si restringe continuamente. D'altra parte, si potrebbe sostenere che la creazione di un server è un lavoro per un esperto, quindi non dovrebbe importare quanto sia facile da fare.

Il modo più semplice per capire la differenza è che per impostazione predefinita un server Windows ha un sacco di cose extra in esecuzione su di esso che non devono essere eseguiti su un server Linux. Ciò significa che Linux può dedicare più risorse di sistema al compito di servire effettivamente il sito Web, mentre Windows deve mettere da parte una parte delle risorse per il proprio consumo interno.

illustrazione per gentile concessione di

Questo è un fattore importante nel motivo per cui Linux è il sistema operativo di server web più popolare con un ampio margine, insieme al suo basso costo e buona sicurezza.

Considerando tutti i fattori rilevanti, sembrerebbe che l'esecuzione di Linux su un server IBM sia la scelta migliore. Otterrete i benefici dell'efficienza dalla migliore architettura software e hardware e costerà meno del pagamento delle licenze di Windows.

Linux è anche "a prova di futuro", il che significa che può sempre essere aggiornato per adattarsi ai cambiamenti tecnologici senza costi aggiuntivi. D'altra parte, Windows può essere utilizzato per supportare la più ampia gamma di hardware (quando i produttori scrivono i loro driver correttamente), ma questo è praticamente irrilevante quando si tratta di server.

Formato HD

Anche il file system utilizzato per l'archiviazione sul server è significativo. Se stai utilizzando un server Windows, la scelta è molto semplice, perché puoi utilizzare logicamente solo NTFS. Se stai usando un server Linux hai una scelta di Ext4, XFS e NTFS (insieme a una serie di altri, ma non sono importanti).

Ext4 è decisamente migliore di NTFS perché è altamente efficiente e non soffre di frammentazione dei file (ecco perché non è necessario deframmentarlo). XFS ha un buon guadagno di velocità per file multimediali di grandi dimensioni, ma non è efficiente per la memorizzazione di un gran numero di piccoli file. Sia Ext4 che XFS hanno una migliore sicurezza dei file incorporata rispetto a NTFS. XFS ha un recupero relativamente scarso se viene danneggiato.

Sulla base di ciò, suggeriamo che Ext4 su Linux su IBM sarebbe la configurazione che si adatta alla maggior parte dei webmaster, e che è esattamente ciò che è la configurazione più popolare.

Software server

Le opzioni principali per il software server sono Apache e Microsoft IIS. Quest'ultimo funzionerà solo su un server Windows, il quale verrà eseguito praticamente su qualsiasi cosa. Ci sono altre scelte disponibili, ma probabilmente non saranno la scelta migliore finché non acquisiranno più quote di mercato.

Apache è di gran lunga il sistema di server più popolare. Può fare tutto ciò che serve, non costa nulla ed è molto facile da capire. IIS è simile ma ci sono alcuni rapporti che indicano che potrebbe essere leggermente migliore.

Sulla base di questo, non vi è un chiaro vincitore, ma IIS potrebbe avere un leggero vantaggio sulle prestazioni. Questo vantaggio è compensato dal fatto che limita l'utente a uno specifico sistema operativo e, in via indiretta, costerà di più a causa delle commissioni di licenza richieste per quel sistema operativo.

Linguaggio di programmazione e scelte di database

Ci sono diverse migliaia di linguaggi di programmazione tra cui scegliere, il che è sorprendente. Esistono oggi più linguaggi di programmazione per computer che lingue parlate, secondo alcune fonti. Quindi come fai a sapere quali scegliere?

Beh, la risposta più semplice a questo è i linguaggi di programmazione che i tuoi sviluppatori hanno più familiarità, perché questo ti darà i risultati più veloci in termini di tempo di sviluppo. Nello scenario improbabile che stai pianificando di licenziare l'intero team di sviluppo e iniziare da zero, c'è un altro modo per scegliere le lingue migliori.

Quel metodo è di guardare ciò che i migliori siti web stanno usando e copiare il loro metodo. Se quei siti, con i milioni di transazioni che elaborano ogni giorno, possono far fronte usando le lingue che fanno, il tuo sito sicuramente farà fronte anche a qualunque carico venga posto su di esso.

Ecco una lista dei migliori siti web secondo Alexa, e i linguaggi di programmazione che autorappresentano come usando:

  1. Google: C, C ++, Java, PHP, MySQL
  2. Facebook: C ++, PHP, MySQL
  3. YouTube: C, Java, MySQL
  4. Yahoo: C, C ++, Java, PHP, MySQL
  5. MSN: ASP.net, SQL Server
  6. Microsoft Live: ASP.net, SQL Server
  7. Wikipedia: PHP, MySQL
  8. Amazon: C ++, Java, J2EE
  9. WordPress: PHP, MySQL

A parte i siti MSN e Microsoft Live di proprietà di Microsoft, nessuno degli altri siti tra i siti principali utilizza ASP.net o SQL Server. Ciò potrebbe riflettere che queste entità non ritengono che le tecnologie siano le migliori per soddisfare le loro esigenze.

Sulla base dei risultati fino ad ora, sembrerebbe che le migliori scelte per 2018 sarebbero Ext4 su Linux su IBM con Apache, usando C, C ++, Java, PHP e MySQL.

illustrazione per gentile concessione di

Filosofia di sviluppo

Avendo determinato la configurazione hardware e software che più probabilmente darà i migliori risultati, sarai sulla buona strada per migliorare l'efficienza del tuo sito web. Un sito Web più efficiente significa tempi di caricamento più rapidi e tempi di caricamento rapidi rendono felice Google.

Ora è il momento di assicurarti che il tuo sito web non commetta nessuno dei peccati capitali che gli sviluppatori di back-end hanno spesso l'abitudine di costruire in un sito. Queste sono pratiche che una volta potevano avere un certo valore, ma ora sono state rese virtualmente obsolete dai cambiamenti nella tecnologia del browser e nelle abitudini dell'utente.

Questi problemi hanno il potenziale di rallentare il tuo sito web al di là di qualsiasi vantaggio che possono offrire, possono danneggiare la tua reputazione e possono abbassare i livelli di fiducia per i consumatori che visitano il tuo sito.

In nessun ordine particolare, ecco i più comuni sviluppatori di extra inutili inclusi in siti che sono stati resi virtualmente inutili da includere:

  1. Script di sicurezza inutili. Se stai facendo cose come cercare di bloccare il clic con il pulsante destro o altri espedienti simili, tutto ciò che stai facendo è un inconveniente per gli utenti legittimi mentre non fai nulla per bloccare gli utenti malintenzionati o impedire alle persone di fare le azioni che stai cercando di impedire.
  2. Monitoraggio. Non funziona più in modo affidabile. Esistono troppe tecnologie che gli utenti forniscono automaticamente dati di tracciamento falsi, quindi i dati non sono attendibili. Non è possibile prendere decisioni aziendali affidabili basate su dati non affidabili.
  3. Avversione al plug-in. La logica qui è abbastanza ragionevole. I siti che fanno affidamento sulle entrate pubblicitarie vogliono proteggere i loro contenuti dall'accesso senza pubblicità. Il problema è che, di nuovo, non si può più contare sul lavoro. Quindi i tuoi sforzi per bloccare questi utenti rilevando il loro stato di plug-in non sono la soluzione giusta. È troppo facile da eludere. La soluzione giusta è quella di offrire pubblicità etica che i plug-in non blocchino.
  4. Selezione della lingua basata sulla regione. Devi lasciare che l'utente selezioni la lingua, o almeno fornisca un modo per superare le selezioni fatte automaticamente se il tuo sito è disponibile in più di una lingua.

Conclusioni

Alcuni dei problemi descritti sopra possono avere un effetto importante sulle prestazioni e sul posizionamento del tuo sito, mentre altri sono meno gravi ma continuano a destare preoccupazione perché causano fastidi inutili agli utenti.

Fissare il back-end del tuo sito è principalmente una questione di fare scelte di selezione del server appropriate per il sito.

L'hardware dovrebbe essere il meglio che ti puoi permettere, perché ci si può aspettare che fornisca prestazioni migliori.

Il sistema operativo e il software del server Web devono essere adeguati alle proprie esigenze.

La scelta dei linguaggi di programmazione e delle soluzioni di database dovrebbe essere idealmente illimitata, scelta in conferenza con i tuoi sviluppatori, o dovrebbe essere selezionata tra le migliori e più popolari soluzioni scelte dai principali fornitori di siti web.

Dovresti evitare pratiche di sviluppo che potrebbero danneggiare la relazione tra la tua organizzazione e gli utenti del sito che visitano il tuo sito web.

Seguendo questi semplici passaggi, dai al tuo sito le migliori possibilità di prosperare.

immagine di cortesia per gentile concessione di

Bogdan Rancea

Bogdan è membro fondatore di Inspired Mag, avendo accumulato quasi 6 anni di esperienza in questo periodo. Nel tempo libero ama studiare musica classica ed esplorare le arti visive. È piuttosto ossessionato dai fissaggi. Possiede già 5.