Diferència entre revisions de la pàgina «Desplegament d'aplicacions web»

De Cacauet Wiki
Salta a la navegació Salta a la cerca
Línia 36: Línia 36:
 
Els servidors d'aplicacions, juntament amb els ''frameworks'' ens permeten separar el codi de l'administració de la infraestructura i la seva escalabilitat (administració, servidors, instàncies, BBDD, usuaris, permisos, etc.).
 
Els servidors d'aplicacions, juntament amb els ''frameworks'' ens permeten separar el codi de l'administració de la infraestructura i la seva escalabilitat (administració, servidors, instàncies, BBDD, usuaris, permisos, etc.).
  
El model [https://en.wikipedia.org/wiki/Platform_as_a_service PaaS (Platform as a Service)] o [https://en.wikipedia.org/wiki/Software_as_a_service SaaS (Software as a Service)] és el concepte clau que ens interessa en aquesta unitat formativa. La idea és desenvolupar l'aplicació i fer el desplegament sense haver de mantenir la infraestructura necessària típica (servidor web, base de dades, etc.). El proveidor del PaaS ens proporciona eines per desenvolupar el software (normalment amb algun ''framework'') i, sobretot, per desplegar-la sobre la seva infraestructura.
+
El següent diagrama del ''stack'' de desplegament per a disposar d'una aplicació web en marxa resulta prou aclaridor. A més, ens indica en cada cas, on arriba la responsabilitat de gestió l'usuari:
  
Pels programadors (particularment al treballar en web) és un model molt interessant per alliberar-nos de la feina de manteniment del sistema.
+
[[Fitxer:xaas.png|600px]]
 +
 
 +
Font: http://blog.brightpattern.com/blog/clearest-explanation-yet-of-saas-paas-iaas
 +
 
 +
Resumint, tenim aquests models de treball:
 +
* '''''On-premises''''': maquinari a l'empresa.
 +
* '''IaaS''' o Infraestructure as a Service: per ex. Amazon Web Services
 +
* '''PaaS''' o Platform as a Service: per ex. Heroku, Openshift, AWS Lambda
 +
* '''SaaS''' o Software as a Service: per ex. www.wordpress.com
 +
 
 +
El model [https://en.wikipedia.org/wiki/Platform_as_a_service PaaS (Platform as a Service)] és el concepte clau que ens interessa en aquesta unitat formativa. La idea és desenvolupar l'aplicació i fer el desplegament sense haver de mantenir la infraestructura necessària típica (servidor web, base de dades, etc.). El proveïdor del PaaS ens proporciona eines per desenvolupar el software (normalment amb algun ''framework'') i, sobretot, per desplegar-la sobre la seva infraestructura.
 +
 
 +
Pels programadors (particularment al treballar en web) és un model molt interessant per alliberar-nos de la feina de manteniment del sistema i recursos.
  
 
En aquest curs veurem:
 
En aquest curs veurem:
Línia 53: Línia 65:
 
* [http://www.muylinux.com/2016/04/19/tutorial-docker Tutorial Docker]
 
* [http://www.muylinux.com/2016/04/19/tutorial-docker Tutorial Docker]
  
Altres opcions interessants:
+
Altres opcions interessants de PaaS:
 
* [http://docs.aws.amazon.com/lambda/latest/dg/welcome.html AWS Lambda], el PaaS de Amazon Web Services (AWS).
 
* [http://docs.aws.amazon.com/lambda/latest/dg/welcome.html AWS Lambda], el PaaS de Amazon Web Services (AWS).
 
* [https://cloud.google.com/appengine Google App Engine (GAE)], el PaaS de [https://cloud.google.com/ Google Cloud]:
 
* [https://cloud.google.com/appengine Google App Engine (GAE)], el PaaS de [https://cloud.google.com/ Google Cloud]:

Revisió del 09:39, 7 abr 2017

Continguts per l'assignatura de DAW M8 Desplegament d'aplicacions web.

Per seguir el curs és interessant (si no imprescindible) utiltizar un servidor públic. És molt convenient fer-nos un compte de AWS: Amazon Web Services amb el que podem gaudir d'un any de servidor gratuïtament.

UF1: Servidors web i de transferència de fitxers

Introducció:

Servidor web Apache:

Servidors de transferència de fitxers (FTP):

Altres servidors web:

  • IIS amb PHP. Habilitarem el servidor web IIS (Internet Information Services) en Windows 2008 Server i habilitarem el PHP.
  • FTP en Windows 2008:
    • Ingerat en IIS
    • Filezilla Server


UF2: Servidors d'aplicacions web

Els servidors d'aplicacions, juntament amb els frameworks ens permeten separar el codi de l'administració de la infraestructura i la seva escalabilitat (administració, servidors, instàncies, BBDD, usuaris, permisos, etc.).

El següent diagrama del stack de desplegament per a disposar d'una aplicació web en marxa resulta prou aclaridor. A més, ens indica en cada cas, on arriba la responsabilitat de gestió l'usuari:

Xaas.png

Font: http://blog.brightpattern.com/blog/clearest-explanation-yet-of-saas-paas-iaas

Resumint, tenim aquests models de treball:

  • On-premises: maquinari a l'empresa.
  • IaaS o Infraestructure as a Service: per ex. Amazon Web Services
  • PaaS o Platform as a Service: per ex. Heroku, Openshift, AWS Lambda
  • SaaS o Software as a Service: per ex. www.wordpress.com

El model PaaS (Platform as a Service) és el concepte clau que ens interessa en aquesta unitat formativa. La idea és desenvolupar l'aplicació i fer el desplegament sense haver de mantenir la infraestructura necessària típica (servidor web, base de dades, etc.). El proveïdor del PaaS ens proporciona eines per desenvolupar el software (normalment amb algun framework) i, sobretot, per desplegar-la sobre la seva infraestructura.

Pels programadors (particularment al treballar en web) és un model molt interessant per alliberar-nos de la feina de manteniment del sistema i recursos.

En aquest curs veurem:

  • Servidors d'aplicacions al núvol:
    • Desplegament amb OpenShift: PaaS de Red Hat. Requereix coneixement de Git.
    • Heroku: OpenShift ha canviat molt la seva tecnologia, aquest any utilitzarem Heroku, que funciona de manera molt similar
  • Tomcat: servidor d'aplicacions Java (servlets, JSP)
  • Servlets: aplicacions web en Java sobre el Tomcat.

Per saber més

Docker és una nova tecnologia de CONTENIDORS que pot comportar un gran canvi de paradigma fort a l'hora de desplegar aplicacions web. S'assemblaria força al concepte de màquines virtuals amb sistemes independents pel què fa a filesystem, llibreries, etc., amb IP pròpia, però que comparteixen el kernel amb la màquina real.

Altres opcions interessants de PaaS:


UF3: Desplegament d'aplicacions web


UF4: Control de versions i documentació

Control de versions:

  • Control de versions (article de teoria)
  • Git: comandes
  • SVN: Subversion. No el veurem en aquest curs, s'està deixant d'utilitzar ja que el Git és més modern i avantatjós.
  • CVS: ídem

Testing web services:

Documentació: