implantación de aplicaciones web - jorgesanchez.net · [2.2] creación profesional de aplicaciones...

33
IAW-2-Preparación del entorno de trabajo Jorge Sánchez, www.jorgesanchez.net @jorgesancheznet Implantación de Aplicaciones Web 2º Curso de Administración de Sistemas Informáticos en Red

Upload: lamkhanh

Post on 26-Sep-2018

234 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Implantación de Aplicaciones Web

2º Curso de Administración de Sistemas Informáticos en Red

Page 2: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Unidad 2) Preparación del entorno de trabajo

Implantación de Aplicaciones Web, módulo del ciclo de FP de Grado Superior, Administración de Sistemas Informáticos en Red

Page 3: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

[2.1] Elementos necesarios para crear aplicaciones web

Implantación de Aplicaciones Web, módulo del ciclo de FP de Grado Superior, Administración de Sistemas Informáticos en Red

Page 4: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Servidor web

•Necesario para probar el código

•Ejemplos: Apache, nginx, Node.js

Page 5: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Servidor de aplicaciones web

•Para PHP Módulo de PHP en el servidor web

•Hay soluciones compactas. Ejemplo: Tomcat (Java)

Page 6: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Servidor de bases de datos

•Para implementar el lado del negocio

•Ejemplos: MySQL, Oracle

Page 7: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Conector a la bases de datos

• Implementa una API de acceso a la base de datos

•Ejemplos: JDBC u ODBC

Page 8: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Entorno de desarrollo o editor de código

•Editores: Sublime Text, Notepad++, Atom

• IDEs: Aptana, PHPStorm, Visual Studio

Page 9: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Depurador•Permite encontrar errores y probar la ejecución del código•Ejemplos: Xdebug, Zend Debugger, FirePHP

Page 10: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Software de creación e hipervisión de máquinas virtuales•Simulan entornos de producción•Evitan deteriorar nuestra máquina de trabajo•Completos: VirtualBox, VMWare•Ligeros: Vagrant, Docker (contenedores)

Page 11: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Software de gestión de control de versiones•Para poder regresar a versiones previas de nuestro código•Ejemplos: Git, VCN, Mercury•En la nube: Github, Bitbucket

Page 12: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

La caja de herramientas del programador web

•Software de test•Para probar el correcto funcionamiento de la aplicación•Ejemplos: Git, PHPUnit, Selenium

Page 13: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

[2.2] Creación profesional de aplicaciones web.

Modelo de tres estados

Implantación de Aplicaciones Web, módulo del ciclo de FP de Grado Superior, Administración de Sistemas Informáticos en Red

Page 14: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Entornos a configurar para el desarrollo

•Development (entorno de pruebas, local)

•Staging (entorno de simulación real, Internet)

•Production (entorno de producción, final, real)

Page 15: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Modelo de tres estados

DEVELOPMENT(SERVIDOR LOCAL)

REPOSITORIO DE CÓDIGO CON SCV

STAGING(SERVIDOR VIRTUAL)

PRODUCTION(SERVIDOR REAL)

Page 16: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

[2.3] Instalación del S.O.

Implantación de Aplicaciones Web, módulo del ciclo de FP de Grado Superior, Administración de Sistemas Informáticos en Red

Page 17: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Linux

•Cuota pequeña con sistema de escritorio

•70% como sistema de servidor

•Mayoría de servidores web (66,5%)

•Debian, Ubuntu, CentOS, Red Hat Enterprise y SuSe

Enterprise

Page 18: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Windows

•Dominante en escritorio

•Tecnologías Microsoft, IIS, solo en este sistema

•Entorno conocido de trabajo

Page 19: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

OSX

•Muy valorado por los desarrolladores

•No es habitual como sistema de producción

•Se basa en Unix

Page 20: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Nuestra opción predilecta:

Page 21: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Nuestra opción predilecta:

..aunque…OSX y Windows son

mejores opciones parael entorno local

Page 22: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

[2.4] Elección y configuración del Servidor

Web

Implantación de Aplicaciones Web, módulo del ciclo de FP de Grado Superior, Administración de Sistemas Informáticos en Red

Page 23: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Elección del servidor web. Apache

•Código abierto

•El más popular

•Gran documentación

•Está perdiendo cuota

Page 24: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Elección del servidor web. nginx

•Código abierto

•Altas prestaciones

•Rivaliza con Apache

•Más rápido con alta demanda

Page 25: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Elección del servidor web. IIS

•Código propietario

•Servidores Windows

• Ideal para .Net

•Preinstalado en la mayoría de distribuciones Windows

Page 26: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Elección del servidor web. Litespeed

•Código propietario

•Compatible con Apache

•Open LiteSpeed, gratuito y abierto

Page 27: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Elección del servidor web. Tomcat

•Apache con módulo Java

•Muy popular para Java

Page 28: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Elección del servidor web. Node.js

•Servidor JavaScript

•Fácil de crear con módulos (como Express.js)

•Muy rápido con alta demanda

•Crece mucho

Page 29: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Cuota de uso general

Apache51,60%Nginx

31,20%

IIS11,90% LiteSpeed

2,30%Otros

13,00%

Fuente:https://w3techs.com/technologies/overview/web_server/all

Page 30: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Cuota de uso en los sitios de más tráfico

Apache26,20%

Nginx46,20%

IIS7,80%

LiteSpeed0,40%

Node.js0,70%

Page 31: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

Nuestra opción:

Page 32: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

2.7) Soluciones integradas

Page 33: Implantación de Aplicaciones Web - jorgesanchez.net · [2.2] Creación profesional de aplicaciones web. Modelo de tres estados Implantación de Aplicaciones Web, módulo del ciclo

IAW-2-Preparación del entorno de trabajoJorge Sánchez, www.jorgesanchez.net

@jorgesancheznet

XAMPP

•Permite el uso de un panel de control•En Linux por consola (se instala en /opt/lampp):chmod 755 xampp-linux-*-installer.runsudo ./xampp-linux-*-installer.run•Facilita la gestión•Está disponible todo lo aprendido en este tema