31-03-2021

Serverless: què és i per a què utilitzar-lo

Serverless és un nou concepte cada vegada més estés gràcies a les avantatges que ofereix. I encara que la seva traducció literal sigui "sense servidor" aquesta no és del tot certa. En aquesta nova entrada al blog t'expliquem les novetats i et desvetllem els avantatges que ofereixen els serveis Serverless.
Serverless: què és i per a què utilitzar-lo background

Què és un servidor?

Un servidor és un -o un conjunt- d’ordinadors equipats amb un programari capaç de rebre peticions d’altres màquines i donar-los una resposta concordant amb la seva petició.

Disposar d’un servidor suposa la seva contractació, la qual comporta uns costos de manteniment, temps d’activitat i recursos. Aquests costos haurem de suportar-los de forma contínua, independentment que aquest servidor estigui rebent sol·licituds o estigui inactiu.

¿Serverless?

El terme Serverless, encara que puguem traduir com “sense servidor”, no vol dir que no es necessiti un servidor físic, sinó que el servidor deixa de ser important per a nosaltres com a desenvolupadors.

El nostre codi, organitzat en funcions, correrà en un ambient d’execució. Aquest ambient d’execució és iniciat en el moment en què s’invoca la nostra funció i deixa d’existir immediatament després de l’execució del codi.

Si la funció ha d’executar-se repetides vegades, el proveïdor s’encarrega de generar tants ambients d’execució com siguin necessaris.

Serveis Serverless més coneguts

Entre tots els serveis Serverless podem destacar entre els molts existents:

  • AWS Lambda: Aquest servei pertany a Amazon, és el més conegut i té suport per a llenguatges com Pyhton, Go, Java, C # o Node.js. Una de les empreses més coneguda que utilitza aquest servei és Netflix.
  • Azure Functions: És el servei Serverless de Microsoft i suporta llenguatges com C #, Javascript, F #, Java, Poweshell, Python o Typescript.
  • Google Cloud Functions: Pertanyent a Google, només es pot fer servir codi Javascript per a executar-se en un entorn Node.js, Python o Go.

Beneficis de Serverless

Les funcions Serverless són fàcils d’usar quan no es requereix guardar estat en memòria. Això és així perquè no controlem quan els ambients d’execució són creats o destruïts i, per tant, no podem assumir que en desar una dada en la memòria de la funció, aquest romangui quan la funció sigui invocada de nou.

Alguns dels beneficis que ens aportarà utilitzar Serverless, són els següents:

  • Menor gestió y manteniment: Desenvoluparem el codi sabent que utilitzarà l’ambient d’execució que hem descrit, la qual cosa és independent d’actualitzacions, d’instal·lació de programari o de gestionar ports d’accés, entre altres coses.
  • Pagament per ús: Només pagarem pel temps en que dura l’execució de les nostres funcions.
  • Fàcilmente escalable: El sistema podrà ser escalat de manera horitzontal tot el que ho necessitis. Aquest creix i decreix en funció del seu ús i et permet afegir tots els clústers, balanceig de càrregues, etc., a mesura que els vagis necessitant.

Casos d’èxit: World Roller Games

A Mecexis coneixem de primera mà els serveis Serverless i els implementem en aquells projectes que es veuen beneficiats pel seu ús, com és el cas dels World Roller Games.

Per a aquest projecte es va desenvolupar una API, la qual recopilava informació de diferents competicions en viu, com ara els calendaris, participants, classificacions, resultats i medalles, i responia instantàniament a les peticions del web i widgets oficials que també van desenvolupar el nostre equip.

L’elecció d’aquest servei per a aquest projecte va suposar un estalvi significatiu per part de client, ja que no hi va haver la necessitat de contractació de servidors que suportessin un volum de peticions elevades. El servidor que s’usava creixia i decreixia en funció del nombre de peticions a l’API. A més, utilitzar Serverless ens va aportar un plus en estabilitat, ja que vam poder garantir una operativitat del servei en tot moment.

Conclusió

Els serveis Serverless, encara que s’anomeni “sense servidor”, no vol dir que no necessiti d’un servidor físic, sinó que el servidor passa a ser una part menys visible del sistema.

Entre tots els serveis Serverless podem destacar el AWS Lambda, l’Azure Functions i el Google Cloud Functions.

Els beneficis que més remarquem d’aquest servei són una menor gestió i manteniment, el pagament és només per ús i la facilitat d’escalat.

Havies sentit parlar d’aquest servei? Segueix-nos a les nostres xarxes socials, Instagram i Facebook, per no perdre’t altres temes d’interès.

Totes les categories

Django: 9 motius pels quals és un gran framework per a desenvolupament web

Django és una opció que ha demostrat la seva eficàcia com un Framework fiable de desenvolupament per construir llocs web ràpids i escalables. També és una de les opcions més populars que hi ha per als desenvolupadors que volen crear llocs web amb codi Python. Heus aquí per què Django podria ser lopció correcta per a vostè també.

Llegir l'article

AWS Cognito: Avantatges i desavantatges d'aquest producte d'Amazon

Cognito és un producte d'Amazon Web Services (AWS) dissenyat per simplificar la gestió d'usuaris i l'accés a la identitat per a aplicacions mòbils, inicis de sessió a llocs web o qualsevol altre tipus de compte d'usuari accessible per Internet. Tant si esteu pensant en implementar Cognito com si ja utilitzeu aquest servei d'AWS, és important entendre els avantatges i desavantatges d'aquesta tecnologia abans d'avançar.

Llegir l'article

Serveis relacionats

Descobreix els nostres serveis relacionats amb aquest artícle.

Veure més

Aplicacions web

Les nostres aplicacions web són desenvolupades mitjançant lestudi de les característiques i motivacions del teu públic objectiu. Amb la nostra experiència, creem una aplicació web que et connecti amb la teva audiència.

  • HTML + CSS + Javascript
  • Django
  • Python
  • Flutter
  • Firebase
Veure projecte

Aplicacions mòbils

Les nostres aplicacions mòbils són creades mitjançant l'anàlisi de les vostres necessitats i preferències. Així doncs, triem la millor tecnologia per crear les aplicacions mòbils que et connectin amb el teu públic objectiu.

  • Flutter
  • Firebase
  • Python
Veure projecte

Pàgines web

La presència de la teva marca a internet no es limita només a estar, és un canal directe amb els teus clients amb la capacitat d'elevar el teu negoci al següent nivell. Establir una relació amb el teu client va molt més enllà de l'elecció d'una plataforma.

  • HTML + CSS + Javascript
  • Python
  • Django
  • Vue.js
Veure projecte

Botiga online — E-commerce

El desenvolupament d'un e-commerce pot obrir les portes del teu negoci al món. Sent un mercat tan competitiu aquest repte només és possible amb un gran equip al darrere com Mecexis.

  • Carticious
  • Python
  • Django
  • HTML + CSS + Javascript
  • Vue.js
Veure projecte

Outsourcing

Tant si tens un volum extra de feina en el teu projecte de desenvolupament o disseny, o com si necessites un equip especialitzat per implementar una tasca dins del teu equip, estem preparats per ajudar-te.

  • Django
  • Python
  • Flutter
  • HTML + CSS + Javascript
  • Vue.js
  • Lambda
  • Firebase
Veure projecte