Tècniques per escalar un sistema distribuït i solucionar l'efecte slashdot
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en catalán con un tamaño de 3,58 KB
Tècniques per escalar un sistema distribuït i solucionar l'efecte slashdot
Un sistema distribuït és escalable si, encara que hi hagi un augment sobtat de tràfic o de connexions d'usuari, aquest es manté eficaç i eficient. Això es pot aconseguir amb les següents tècniques:
- Replicació de dades: consisteix a mantenir còpies de dades en diversos servidors per diversificar la demanda i evitar la centralització.
- Emmagatzemament en cau: consisteix a emmagatzemar les respostes a les peticions per evitar consultar el servidor original repetidament.
- Desplegament de servidors: consisteix a implementar serveis en servidors separats per distribuir la càrrega de treball.
Per solucionar l'efecte slashdot, es pot utilitzar l'escalat horitzontal, que permet afegir nodes per abordar un augment sobtat de tràfic. Aquesta tècnica és més útil que l'escalat vertical, ja que permet abordar escenaris com el creixement continu, basat en l'afegiment de nodes, o l'event based, que permet ampliar el nombre de nodes durant un període de temps específic.
Comparació del model thin client/fat server amb el model fat client/thin server
En els models client-servidor, la funcionalitat i la càrrega de treball es reparteixen entre els clients i el servidor. En el model thin client/fat server, el client té un sistema operatiu i programari simple i limitat, mentre que el servidor és més potent i processa la majoria de les tasques. En el model fat client/thin server, el client té un sistema operatiu i programari més complet i potent, mentre que el servidor és utilitzat principalment com a punt d'emmagatzematge de dades.
Models push i pull per a comunicació instantània com xats
Els models push i pull són dues formes diferents de comunicació a través d'Internet. En el model push, la informació és enviada directament a l'usuari final, mentre que en el model pull, l'usuari ha d'anar a buscar la informació. El model push és més adequat per a comunicació instantània com xats, ja que permet rebre els nous events de forma instantània. En HTTP, es poden utilitzar tècniques com Webpush, HTTP server push, Pushlet i Long polling per desenvolupar aplicacions de xat interactives.
Serverless Computation with OpenLambda
El model serverless permet l'execució de funcions sense haver de gestionar la infraestructura. En relació amb els models FaaS, PaaS i IaaS, el serverless programming s'ubica en un nivell d'abstracció més alt, ja que s'encarrega de l'execució de funcions sense estat. Aquest model aconsegueix escalabilitat, heterogeneïtat i tolerància a fallades. Per a escalabilitat, les funcions es poden executar en paral·lel i s'adapten a la demanda. Pel que fa a heterogeneïtat, el model permet abstraure's de les capes inferiors i utilitzar diferents tipus de maquinari. I per a tolerància a fallades, les funcions són stateless i es poden reexecutar en cas de fallada.
Occupy the Cloud: Distributed Computing for the 99%
Aquest article proposa l'ús del model serverless per a treballar amb aplicacions de big data. L'arquitectura PyWren permet utilitzar el model serverless mitjançant una API senzilla que converteix el codi de l'usuari en funcions executables en paral·lel. Aquesta arquitectura aconsegueix escalabilitat i tolerància a fallades, ja que permet emmagatzemar i processar grans quantitats de dades de forma eficient i reexecutar les funcions en cas de fallada.