Please enable JavaScript.
Coggle requires JavaScript to display documents.
Introducción al despliegue de aplicaciones web - Coggle Diagram
Introducción al despliegue de aplicaciones web
1, Aspectos generales en la arquitectura web
Escalabilidad
Separación de responsabilidades
Portabilidad
Utilización de componentes en los servicios de infraestructura
Sesiones del usuario
Patrones de diseño
Modelo de tres capas
Servidores de aplicaciones web
Ejecutan aplicaciones de tipo Apache, nginx, Microsoft IIS, Tomcat, Resin, etc.
Clientes del servicio web
Acceden mediante un navegador web como Firefox, Internet Explorer, Opera, etc.
Capa de Base de Datos
Está toda la documentación de la información que se pretende administrar mediante el servicio web
Aplicaciones web según el uso
Blogs
permiten gestionar los contenidos de forma cronológica, por temas, por editores, etc..
Contabilidad
permiten gestionar en equipo la contabilidad de una entidad.
Propósito general
permiten crear portales de múltiples temas
Wikis
permiten la colaboración en la edición y publicación de contenidos online
Aplicaciones web: CMS
Surgen los CMS para crear webs ágiles.
CMS son actualizables y administrados sin grandes conocimientos técnicos.
Las actualizaciones de sitios web se ha convertido en una tarea costosa y compleja.
Separación backend (parte administrativa) y frontend (zona de diseño de contenidos).
Una sociedad cada vez más compleja en cuanto a la información que se genera.
Plataformas web
Servidor web
Es el software que maneja las peticiones desde equipos remotos a través de Internet.
Gestor de bases de datos
Se encarga de almacenar sistemáticamente un conjunto de registros de datos relacionados para ser usados posteriormente.
Sistema operativo
bajo el cual opera el equipo donde se hospedan las páginas web y que representa la base misma del funcionamiento del computador.
Lenguaje de programación interpretado
Controla las aplicaciones de software que corren en el sitio web.
Tecnologías mas usadas
Servidor de bases de datos
MySQL, Oracle, PostgreSQL, SQL Server.
Lenguaje de desarrollo
PHP (la gran mayoría), Java, Perl, Ruby on Rails, Python (gran crecimiento en los últimos años, asociado al big data e inteligencia artificial).
Servidor web
Apache, nginx, Apache Tomcat
Cloud Computing
Es un modelo de prestación de servicios de negocio y tecnología en la red.
Permite cubrir las necesidades tecnológicas que demandan los clientes, de forma flexible y adaptativa
Hay 3 tipos de nubes
Nube pública
Los servicios que ofrecen se encuentran en servidores externos al usuario. Es administrado por terceras partes y la información almacenada en diferentes clientes pueden coexistir en los servidores
Nube privada
Están dentro de la compañía. Son administradas por un único cliente y son propietarios del servidor, almacenamiento y red. Suelen ser una compañía buena que necesitan alta protección de datos
Nube híbrida
El Cloud Híbrido combina Cloud Privado y Cloud Público: el primero para datos y aplicaciones críticas, asegurando rendimiento, seguridad y control; y el segundo para cubrir picos de demanda que el privado no puede manejar.
Tipos de cloud según modelo de servicio
Platform as a Service (PaaS)
Ofrece la posibilidad de acceder a todas las herramientas de desarrollo de aplicaciones sin instalar nada en el equipo propio.
Software as a Service (SaaS)
Es la forma más conocida de cloud. Todas las aplicaciones de software se encuentran en la nube y el usuario suele acceder a ellas mediante un simple navegador web.
Infrastructure as a Service (IaaS)
En lugar de mantener centros de datos o servidores, los clientes compran los recursos almacenamiento y cómputo como un servicio completamente externo.
Hardware necesario
RAM
Ejecución de software
HD
Almacenamiento
CPU
Potencia de cálculo
OpenStack
OpenStack es una solución de cloud computing del tipo IaaS de código abierto
Su misión es crear una plataforma de software libre para cloud computing, adaptable a proveedores de nubes públicas y privadas de cualquier tamaño, fácil de implementar y altamente escalable.
Amazon Web Services
Amazon Web Services ofrece servicios globales de computación, almacenamiento, bases de datos y aplicaciones para ayudar a las organizaciones a acelerar, reducir costos de TI y escalar aplicaciones.
Microsoft Azure
Es un servicio de computación en la nube creado por Microsoft para construir, probar, desplegar y administrar aplicaciones y servicios mediante el uso de sus centros de datos.
Contenedores Docker
Docker es un proyecto de código abierto que automatiza el despliegue de aplicaciones en contenedores, añadiendo una capa de abstracción y automatización de virtualización en varios sistemas operativos.
Virtualización con Virtualbox
Oracle VM VirtualBox es un software de virtualización para arquitecturas x86/amd64. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualización.
Virtualización con Qemu
QEMU es un emulador de procesadores que utiliza la traducción dinámica de binarios y permite la virtualización en sistemas operativos como GNU/Linux y Windows, siendo esta su forma más común de uso.