ShareThisEsperienza nella costruzione di applicazioni Meteor a scala

Da Vijay Annapureddy

ShareThis usa Meteor per costruire applicazioni web. Meteor è una piattaforma full-stack per la costruzione di applicazioni web e mobile in puro JavaScript. Un'app Meteor include un componente lato client che gira sul client (il browser), che permette a Meteor di fare quello che chiama database ovunque. Meteor prenderà un sottoinsieme del database e lo copierà sul client. Invece di inviare codice HTML al cliente, una Meteor app invierà i dati reali e grezzi e lascerà che sia il cliente ad occuparsene.

Dal momento che il 65% dellShareThis'infrastruttura è dockerizzata e funzionante su Kubernetes e per poter utilizzare Meteor in modo efficace, abbiamo bisogno di costruire applicazioni Meteor in scala con la capacità di gestire milioni di richieste al mese. Per fare questo, per prima cosa abbiamo testato le nostre applicazioni Meteor e osservato le prestazioni rispetto al numero di richieste al secondo quando ci sono un gran numero di richieste simultanee. Per rendere i dati dal backend dell'interfaccia utente di MongoDB, i server Meteor hanno pubblicato dei set di record. I tempi di risposta della nostra applicazione che gira su Meteor, più MongoDB, sono stati insoddisfacenti. Ci sono voluti 1,5 secondi e mezzo perché Meteor aggiornasse 5.000 documenti Mongo quando è stata testata con 185 richieste al secondo a livello di concorrenza di 125. I tempi di risposta ideali dovrebbero essere inferiori a 1 secondo.

Le cose importanti che abbiamo osservato con l'esecuzione di Meteor in scala su Kubernetes sono:
Il Publisher & Subscription di default di Meteor non può rendere un gran numero di aggiornamenti di MongoDB in tempo reale
Il sock.js di Meteor e il requisito di sessioni appiccicose rendono l'interfaccia utente sfasata quando ci sono più istanze di Meteor che corrono in parallelo dietro un bilanciatore di carico

Per saperne di più sul nostro approccio alla scalatura di Meteor e sui cambiamenti che abbiamo apportato alla nostra architettura Meteor, cliccate qui:

Informazioni su ShareThis

ShareThis ha sbloccato il potere del comportamento digitale globale sintetizzando i dati di condivisione sociale, interesse e intenzione dal 2007. Alimentato dal comportamento dei consumatori su oltre tre milioni di domini globali, ShareThis osserva le azioni in tempo reale di persone reali su destinazioni digitali reali.

Iscriviti alla nostra newsletter

Ricevete le ultime notizie, i suggerimenti e gli aggiornamenti

Iscriviti

Contenuto correlato