SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
1
Alta disponibiliad y
escalabilidad
1
Tema 2
Pedro A. Castillo Valdivieso
Depto Arquitectura y Tecnología de Computadores
Universidad de Granada
pacv@ugr.es
Índice
Introducción
Concepto de alta disponibilidad
Concepto de escalabilidad
Escalar un sitio web
Conclusiones
2
2
Introducción
disponibilidad escalabilidad
conceptos más importantes al diseñar una granja web
3
Introducción
Nuestros servidores deben dar el mejor servicio a todos los
usuarios y deben estar todo el tiempo disponible (24/7).
•  Disponibilidad
•  Escalabilidad
•  Balanceo de carga
4
3
Índice
Introducción
Concepto de alta disponibilidad
Concepto de escalabilidad
Escalar un sitio web
Conclusiones
5
Alta disponibilidad
http://www.isitdownrightnow.com/
6
4
Alta disponibilidad
Mala impresión al entrar en un sitio y está caído.
Esperamos que una web esté disponible siempre.
Disponibilidad: capacidad de aceptar visitas las 24h todos
los días.
7
Alta disponibilidad
Cuando un sitio no está disponible se dice que se ha caído o
sufre un problema de no-disponibilidad:
•  Tiempo de no-disponibilidad programado.
•  Tiempo de no-disponibilidad no programado.
Sólo debería haber ”tiempos de no-disponibilidad
programados” (y lo más cortos posibles)
actualizaciones del SO, de aplicaciones o de hardware
8
5
Alta disponibilidad
Medir la disponibilidad dando un porcentaje.
Escala “punto nueve”:
100 – (tiempoCaido / periodoTiempo) * 100!
Por ejemplo:
caída de 1h en un día -> 95.83333% de disponibilidad
caída de 1h en una semana -> 99.404% de disponibilidad
Lo ideal es tener un 100% de disponibilidad.
9
Alta disponibilidad
Un 100% de disponibilidad es no sufrir caídas no-programadas
Los sitios web se conforman con alcanzar un 99.9% ó 99.99%
10
6
Alta disponibilidad
¿Cómo se consigue mejorar la disponibilidad?
El uso de subsistemas redundantes y monitorizarlos mejora
la disponibilidad del sistema global.
Surgen conceptos derivados:
–  disponibilidad de red
–  disponibilidad de servidor
–  disponibilidad de aplicación
Si la disponibilidad de red es baja, quizás haya que mejorar
el ancho de banda, y no tenga sentido centrar esfuerzos en
mejorar las aplicaciones.
11
Alta disponibilidad
Ejercicio:
Buscar frameworks y librerías para diferentes lenguajes que
permitan hacer aplicaciones altamente disponibles con
relativa facilidad.
Como ejemplo, examina PM2
https://github.com/Unitech/pm2
que sirve para administrar clústeres de NodeJS.
12
7
Índice
Introducción
Concepto de alta disponibilidad
Concepto de escalabilidad
Escalar un sitio web
Conclusiones
13
Escalabilidad
Cuando una persona sufre estrés, su capacidad para afrontar
tareas se ve mermada.
Cuando un sistema experimenta estrés, su capacidad para
dar servicio también se ve afectada.
14
8
Escalabilidad
Incremento del nivel de estrés:
•  Cambios en las aplicaciones
•  Fallos o caídas de algunas partes del sistema
•  Incremento del número de máquinas
•  Incremento repentino del número de usuarios del sitio
La escalabilidad se refiere a la capacidad de un sistema de
manejar la carga, y el esfuerzo para adaptarse al nuevo
nivel de carga.
15
Escalabilidad
escalabilidad = capacidad de un sistema de manejar la
carga, y el esfuerzo para adaptarse al nuevo nivel de carga
http://bit.ly/Z2II1G
16
Menorimpactoenescalabilidad
Optimización del hardware
Optimización del producto
Optimización del código
Diseño
9
Escalabilidad
Si un sitio gana popularidad, o si llega una fecha señalada,
puede incrementarse su carga.
Para manejar esa carga, las empresas tienen más servidores
de los necesarios normalmente.
Decidir cómo añadir más recursos al sistema web es crucial
en el diseño inicial y en el mantenimiento.
En ocasiones, si la CPU del servidor está al 95% todo el
tiempo, cambiándola puede ser suficiente para cierto nivel
de carga. Pero si más adelante hay más carga, será
insuficiente.
17
Escalabilidad
Vemos que hay dos tipos de escalado:
•  Ampliación vertical:
incrementar la RAM, CPU, disco de un servidor.
•  Ampliación horizontal:
añadir máquinas a algún subsistema (servidores web,
servidores de datos, etc).
En ocasiones una ampliación vertical puede ser suficiente.
18
10
Escalabilidad
¿Cómo analizar la sobrecarga?
•  Si la CPU está cerca del 100% todo el rato y el resto de
subsistemas no está sobrecargado, sustituir por una CPU
más potente.
•  Si el uso de RAM es muy alto, veremos un uso alto de disco
(por swapping). Incrementando la cantidad de RAM
mejoraremos el rendimiento.
•  Un ancho de banda insuficiente afectará al rendimiento.
Contratando una mejor conexión será suficiente.
19
Escalabilidad
Ejercicio:
¿Cómo analizar el nivel de carga de cada uno de los
subsistemas en el servidor?
Buscar herramientas y aprender a usarlas.
...¡o recordar cómo usarlas!
20
11
Índice
Introducción
Concepto de alta disponibilidad
Concepto de escalabilidad
Escalar un sitio web
Conclusiones
21
Escalar un sitio web
Tenemos que configurar tres niveles:
–  máquinas como servidores web
–  aplicaciones
–  almacenamiento
22
12
Escalar un sitio web
El nivel web se puede configurar balanceando la carga:
•  uso de una máquina
con software específico
23
Web01 Web03Web02
Balanceo de la carga
Sitio web
Escalar un sitio web
También se puede usar un balanceador hardware:
•  Local Director (Cisco)
•  ServerIron (Foundry)
•  BigIP (F5)
24
Web01 Web03Web02
Balanceo de la carga
por hardware
Sitio web
13
Escalar un sitio web
El balanceador pasa peticiones a los servidores según el
tráfico de la red.
Hay varios algoritmos para decidir qué máquina final servirá
cada petición:
–  Por turnos (round-robin)
–  Según el menor número de conexiones
–  Por ponderación
–  Por prioridad
–  Según el tiempo de respuesta
25
Escalar un sitio web
Escalar el nivel de aplicaciones requiere diseñar el
software pensando en que se ejecute en varios servidores:
•  Paralelismo
•  Transparencia de ubicación: no debe haber dependencia de
una máquina concreta para ejecutarse la aplicación.
Es importante diseñar las aplicaciones desde el principio
para que se ejecuten en varios servidores.
Adaptar posteriormente una aplicación dependiente de
cierto servidor puede ser costoso.
26
14
Escalar un sitio web
Escalar el nivel de almacenamiento es complejo y depende
del tipo de servicios a ofrecer:
•  LDAP: Protocolo Ligero de Acceso a Directorios
•  NFS: Sistema de archivos de red
•  Bases de datos
Cada uno de estos mecanismos suele requerir mecanismos y
configuraciones diferentes.
27
Escalar un sitio web
Ejercicio:
Buscar ejemplos de balanceadores software y hardware
(productos comerciales).
Buscar productos comerciales para servidores de
aplicaciones.
Buscar productos comerciales para servidores de
almacenamiento.
28
15
Índice
Introducción
Concepto de alta disponibilidad
Concepto de escalabilidad
Escalar un sitio web
Conclusiones
29
Conclusiones
Conceptos clave: escalabilidad y alta disponibilidad.
Monitorización para detectar problemas y determinar
posibles mejoras del sitio web.
La escalabilidad se suele implementar replicando
servidores para las mismas tareas.
Conseguir disponibilidad y escalabilidad mediante
balanceo de carga.
30

Mais conteúdo relacionado

Mais procurados

Alta disponibilidad y balanceo de carga en Linux
Alta disponibilidad y balanceo de carga en LinuxAlta disponibilidad y balanceo de carga en Linux
Alta disponibilidad y balanceo de carga en LinuxJavier Turégano Molina
 
Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]
Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]
Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]GLORIA ALEJANDRA
 
Alta disponibilidad-con-heartbeat
Alta disponibilidad-con-heartbeatAlta disponibilidad-con-heartbeat
Alta disponibilidad-con-heartbeatDavid Acevedo
 
Cluster sql server
Cluster sql serverCluster sql server
Cluster sql serverorellana_22
 
Itranser Virtualizacion (Vmware y Cloud Services)
Itranser  Virtualizacion (Vmware y Cloud Services)Itranser  Virtualizacion (Vmware y Cloud Services)
Itranser Virtualizacion (Vmware y Cloud Services)EuropeSIP Communications SL
 
Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...
Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...
Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...EAE
 
Manual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en DebianManual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en Debianlavp28
 
Alta disponibilidad con Pacemaker
Alta disponibilidad con PacemakerAlta disponibilidad con Pacemaker
Alta disponibilidad con PacemakerNelson Calero
 
Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...
Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...
Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...Nelson Calero
 
Guías y recomendaciones para instalar y configurar clusters de sql server
Guías y recomendaciones para instalar y configurar clusters de sql serverGuías y recomendaciones para instalar y configurar clusters de sql server
Guías y recomendaciones para instalar y configurar clusters de sql serverEnrique Catala Bañuls
 
Sql server cluster
Sql server clusterSql server cluster
Sql server clusterjo_unwell
 

Mais procurados (20)

Clúster de alta Disponibilidad
Clúster de alta DisponibilidadClúster de alta Disponibilidad
Clúster de alta Disponibilidad
 
Servidor web nginx
Servidor web nginxServidor web nginx
Servidor web nginx
 
Pruebas del servicio web
Pruebas del servicio webPruebas del servicio web
Pruebas del servicio web
 
Protocol HTTP
Protocol HTTPProtocol HTTP
Protocol HTTP
 
Aspectos nodejs
Aspectos nodejsAspectos nodejs
Aspectos nodejs
 
Servidores web: cloud
Servidores web: cloudServidores web: cloud
Servidores web: cloud
 
Alta disponibilidad y balanceo de carga en Linux
Alta disponibilidad y balanceo de carga en LinuxAlta disponibilidad y balanceo de carga en Linux
Alta disponibilidad y balanceo de carga en Linux
 
Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]
Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]
Proyecto Servidor 1103 Martinez Rodriguez 1103 [Recuperado]
 
Apache
Apache Apache
Apache
 
Alta disponibilidad-con-heartbeat
Alta disponibilidad-con-heartbeatAlta disponibilidad-con-heartbeat
Alta disponibilidad-con-heartbeat
 
Cluster sql server
Cluster sql serverCluster sql server
Cluster sql server
 
Itranser Virtualizacion (Vmware y Cloud Services)
Itranser  Virtualizacion (Vmware y Cloud Services)Itranser  Virtualizacion (Vmware y Cloud Services)
Itranser Virtualizacion (Vmware y Cloud Services)
 
Clústers Alta Disponibilidad
Clústers Alta DisponibilidadClústers Alta Disponibilidad
Clústers Alta Disponibilidad
 
Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...
Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...
Alta Disponibilidad y Recuperación ante de desastres en SQL Server 2012, 2014...
 
Manual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en DebianManual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en Debian
 
Alta disponibilidad con Pacemaker
Alta disponibilidad con PacemakerAlta disponibilidad con Pacemaker
Alta disponibilidad con Pacemaker
 
Cluster de alta disponibilidad con corosync, pacemaker & apache2
Cluster de alta disponibilidad con corosync, pacemaker & apache2Cluster de alta disponibilidad con corosync, pacemaker & apache2
Cluster de alta disponibilidad con corosync, pacemaker & apache2
 
Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...
Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...
Alternativas de alta disponiblidad en MySQL - MySQL Meetup - Montevideo - Mar...
 
Guías y recomendaciones para instalar y configurar clusters de sql server
Guías y recomendaciones para instalar y configurar clusters de sql serverGuías y recomendaciones para instalar y configurar clusters de sql server
Guías y recomendaciones para instalar y configurar clusters de sql server
 
Sql server cluster
Sql server clusterSql server cluster
Sql server cluster
 

Semelhante a Servidores web de altas prestaciones. Tema 2

Optimización de aplicaciones web con base de datos NoSQL In-Memory
Optimización de aplicaciones web con base de datos NoSQL In-MemoryOptimización de aplicaciones web con base de datos NoSQL In-Memory
Optimización de aplicaciones web con base de datos NoSQL In-MemoryGonzalo Chacaltana
 
I Llampageek - Servidores de Alta Disponibilidad en Software Libre.
I Llampageek - Servidores de Alta Disponibilidad en Software Libre.I Llampageek - Servidores de Alta Disponibilidad en Software Libre.
I Llampageek - Servidores de Alta Disponibilidad en Software Libre.EtiCAGNU
 
Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...
Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...
Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...Miguel Gallardo
 
Desarrollo de aplicaciones altamente escalables
Desarrollo de aplicaciones altamente escalablesDesarrollo de aplicaciones altamente escalables
Desarrollo de aplicaciones altamente escalablesGlobant
 
Granja de servidores web
Granja de servidores webGranja de servidores web
Granja de servidores webOtto Valdez
 
Aplicaciones web enriquecidas "RIA"
Aplicaciones web enriquecidas "RIA"Aplicaciones web enriquecidas "RIA"
Aplicaciones web enriquecidas "RIA"Erick Cerna
 
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)Micael Gallego
 
Servidores REDES EMERGENTES MATERIA
Servidores REDES EMERGENTES MATERIAServidores REDES EMERGENTES MATERIA
Servidores REDES EMERGENTES MATERIAVicTorx D. Rko
 
Servidores informaticos, modelo cliente servdor
Servidores informaticos, modelo cliente servdor Servidores informaticos, modelo cliente servdor
Servidores informaticos, modelo cliente servdor Erivan Martinez Ovando
 
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...Amazon Web Services
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosAmazon Web Services LATAM
 
Cliente servidor
Cliente servidorCliente servidor
Cliente servidorJonathan
 

Semelhante a Servidores web de altas prestaciones. Tema 2 (20)

Optimización de aplicaciones web con base de datos NoSQL In-Memory
Optimización de aplicaciones web con base de datos NoSQL In-MemoryOptimización de aplicaciones web con base de datos NoSQL In-Memory
Optimización de aplicaciones web con base de datos NoSQL In-Memory
 
I Llampageek - Servidores de Alta Disponibilidad en Software Libre.
I Llampageek - Servidores de Alta Disponibilidad en Software Libre.I Llampageek - Servidores de Alta Disponibilidad en Software Libre.
I Llampageek - Servidores de Alta Disponibilidad en Software Libre.
 
Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...
Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...
Arquitectura de las nuevas aplicaciones web: Como lograr escalabilidad, alta ...
 
Escalabilidad de Websites
Escalabilidad de WebsitesEscalabilidad de Websites
Escalabilidad de Websites
 
Desarrollo de aplicaciones altamente escalables
Desarrollo de aplicaciones altamente escalablesDesarrollo de aplicaciones altamente escalables
Desarrollo de aplicaciones altamente escalables
 
Granja de servidores web
Granja de servidores webGranja de servidores web
Granja de servidores web
 
Aplicaciones web enriquecidas "RIA"
Aplicaciones web enriquecidas "RIA"Aplicaciones web enriquecidas "RIA"
Aplicaciones web enriquecidas "RIA"
 
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
 
3 plate spin 24-10-06
3 plate spin 24-10-063 plate spin 24-10-06
3 plate spin 24-10-06
 
Servicios de Bases de Datos de AWS
Servicios de Bases de Datos de AWSServicios de Bases de Datos de AWS
Servicios de Bases de Datos de AWS
 
¿Cómo elegir servidor web?
¿Cómo elegir servidor web?¿Cómo elegir servidor web?
¿Cómo elegir servidor web?
 
Tuning Lamp
Tuning LampTuning Lamp
Tuning Lamp
 
Servidores REDES EMERGENTES MATERIA
Servidores REDES EMERGENTES MATERIAServidores REDES EMERGENTES MATERIA
Servidores REDES EMERGENTES MATERIA
 
Cómo elegir un servidor Web
Cómo elegir un servidor WebCómo elegir un servidor Web
Cómo elegir un servidor Web
 
Nuevas tendencias
Nuevas tendenciasNuevas tendencias
Nuevas tendencias
 
Servidores informaticos, modelo cliente servdor
Servidores informaticos, modelo cliente servdor Servidores informaticos, modelo cliente servdor
Servidores informaticos, modelo cliente servdor
 
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
AWS Presentacion Universidad de los Andes "Escalando para sus primeros 10 Mil...
 
LAN
LANLAN
LAN
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
 
Cliente servidor
Cliente servidorCliente servidor
Cliente servidor
 

Mais de pacvslideshare

Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
Aplicaciones de comunicación e interacción con los estudiantes (Telegram)Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
Aplicaciones de comunicación e interacción con los estudiantes (Telegram)pacvslideshare
 
Finding self-organized criticality in collaborative work via repository mining
Finding self-organized criticality in collaborative work via repository miningFinding self-organized criticality in collaborative work via repository mining
Finding self-organized criticality in collaborative work via repository mining pacvslideshare
 
Herramientas tic en docencia (2016)
Herramientas tic en docencia (2016)Herramientas tic en docencia (2016)
Herramientas tic en docencia (2016)pacvslideshare
 
Cloud Computing. Contenedores
Cloud Computing. ContenedoresCloud Computing. Contenedores
Cloud Computing. Contenedorespacvslideshare
 
Cloud Computing. Gestión de configuraciones. Vagrant
Cloud Computing. Gestión de configuraciones. VagrantCloud Computing. Gestión de configuraciones. Vagrant
Cloud Computing. Gestión de configuraciones. Vagrantpacvslideshare
 
Cloud Computing. Gestión de configuraciones. Ansible
Cloud Computing. Gestión de configuraciones. AnsibleCloud Computing. Gestión de configuraciones. Ansible
Cloud Computing. Gestión de configuraciones. Ansiblepacvslideshare
 
Cloud Computing. Gestión de configuraciones
Cloud Computing. Gestión de configuracionesCloud Computing. Gestión de configuraciones
Cloud Computing. Gestión de configuracionespacvslideshare
 
Cloud Computing. Virtualización. IBM Bluemix
Cloud Computing. Virtualización. IBM BluemixCloud Computing. Virtualización. IBM Bluemix
Cloud Computing. Virtualización. IBM Bluemixpacvslideshare
 
Cloud Computing. Virtualización. Azure
Cloud Computing. Virtualización. AzureCloud Computing. Virtualización. Azure
Cloud Computing. Virtualización. Azurepacvslideshare
 
Cloud Computing. Virtualización. qemu
Cloud Computing. Virtualización. qemuCloud Computing. Virtualización. qemu
Cloud Computing. Virtualización. qemupacvslideshare
 
Cloud Computing. Virtualización
Cloud Computing. VirtualizaciónCloud Computing. Virtualización
Cloud Computing. Virtualizaciónpacvslideshare
 
Cloud Computing. Presentación general
Cloud Computing. Presentación generalCloud Computing. Presentación general
Cloud Computing. Presentación generalpacvslideshare
 
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...pacvslideshare
 
Experimentación con algoritmos distribuidos usando herramientas libres y grat...
Experimentación con algoritmos distribuidos usando herramientas libres y grat...Experimentación con algoritmos distribuidos usando herramientas libres y grat...
Experimentación con algoritmos distribuidos usando herramientas libres y grat...pacvslideshare
 
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...pacvslideshare
 
Adaptando algoritmos evolutivos paralelos al lenguaje funcional Erlang
Adaptando algoritmos evolutivos paralelos al lenguaje funcional ErlangAdaptando algoritmos evolutivos paralelos al lenguaje funcional Erlang
Adaptando algoritmos evolutivos paralelos al lenguaje funcional Erlangpacvslideshare
 
Cec2010 presentacion v20jl
Cec2010 presentacion v20jlCec2010 presentacion v20jl
Cec2010 presentacion v20jlpacvslideshare
 

Mais de pacvslideshare (19)

Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
Aplicaciones de comunicación e interacción con los estudiantes (Telegram)Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
 
Finding self-organized criticality in collaborative work via repository mining
Finding self-organized criticality in collaborative work via repository miningFinding self-organized criticality in collaborative work via repository mining
Finding self-organized criticality in collaborative work via repository mining
 
Herramientas tic en docencia (2016)
Herramientas tic en docencia (2016)Herramientas tic en docencia (2016)
Herramientas tic en docencia (2016)
 
Cloud Computing. Contenedores
Cloud Computing. ContenedoresCloud Computing. Contenedores
Cloud Computing. Contenedores
 
Cloud Computing. Gestión de configuraciones. Vagrant
Cloud Computing. Gestión de configuraciones. VagrantCloud Computing. Gestión de configuraciones. Vagrant
Cloud Computing. Gestión de configuraciones. Vagrant
 
Cloud Computing. Gestión de configuraciones. Ansible
Cloud Computing. Gestión de configuraciones. AnsibleCloud Computing. Gestión de configuraciones. Ansible
Cloud Computing. Gestión de configuraciones. Ansible
 
Cloud Computing. Gestión de configuraciones
Cloud Computing. Gestión de configuracionesCloud Computing. Gestión de configuraciones
Cloud Computing. Gestión de configuraciones
 
Cloud Computing. Virtualización. IBM Bluemix
Cloud Computing. Virtualización. IBM BluemixCloud Computing. Virtualización. IBM Bluemix
Cloud Computing. Virtualización. IBM Bluemix
 
Cloud Computing. Virtualización. Azure
Cloud Computing. Virtualización. AzureCloud Computing. Virtualización. Azure
Cloud Computing. Virtualización. Azure
 
Cloud Computing. Virtualización. qemu
Cloud Computing. Virtualización. qemuCloud Computing. Virtualización. qemu
Cloud Computing. Virtualización. qemu
 
Cloud Computing. Virtualización
Cloud Computing. VirtualizaciónCloud Computing. Virtualización
Cloud Computing. Virtualización
 
Cloud Computing. Presentación general
Cloud Computing. Presentación generalCloud Computing. Presentación general
Cloud Computing. Presentación general
 
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
 
Experimentación con algoritmos distribuidos usando herramientas libres y grat...
Experimentación con algoritmos distribuidos usando herramientas libres y grat...Experimentación con algoritmos distribuidos usando herramientas libres y grat...
Experimentación con algoritmos distribuidos usando herramientas libres y grat...
 
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
 
Adaptando algoritmos evolutivos paralelos al lenguaje funcional Erlang
Adaptando algoritmos evolutivos paralelos al lenguaje funcional ErlangAdaptando algoritmos evolutivos paralelos al lenguaje funcional Erlang
Adaptando algoritmos evolutivos paralelos al lenguaje funcional Erlang
 
Iwann2011 gpus
Iwann2011 gpusIwann2011 gpus
Iwann2011 gpus
 
Optimizando EAs
Optimizando EAsOptimizando EAs
Optimizando EAs
 
Cec2010 presentacion v20jl
Cec2010 presentacion v20jlCec2010 presentacion v20jl
Cec2010 presentacion v20jl
 

Último

Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 

Último (20)

Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 

Servidores web de altas prestaciones. Tema 2

  • 1. 1 Alta disponibiliad y escalabilidad 1 Tema 2 Pedro A. Castillo Valdivieso Depto Arquitectura y Tecnología de Computadores Universidad de Granada pacv@ugr.es Índice Introducción Concepto de alta disponibilidad Concepto de escalabilidad Escalar un sitio web Conclusiones 2
  • 2. 2 Introducción disponibilidad escalabilidad conceptos más importantes al diseñar una granja web 3 Introducción Nuestros servidores deben dar el mejor servicio a todos los usuarios y deben estar todo el tiempo disponible (24/7). •  Disponibilidad •  Escalabilidad •  Balanceo de carga 4
  • 3. 3 Índice Introducción Concepto de alta disponibilidad Concepto de escalabilidad Escalar un sitio web Conclusiones 5 Alta disponibilidad http://www.isitdownrightnow.com/ 6
  • 4. 4 Alta disponibilidad Mala impresión al entrar en un sitio y está caído. Esperamos que una web esté disponible siempre. Disponibilidad: capacidad de aceptar visitas las 24h todos los días. 7 Alta disponibilidad Cuando un sitio no está disponible se dice que se ha caído o sufre un problema de no-disponibilidad: •  Tiempo de no-disponibilidad programado. •  Tiempo de no-disponibilidad no programado. Sólo debería haber ”tiempos de no-disponibilidad programados” (y lo más cortos posibles) actualizaciones del SO, de aplicaciones o de hardware 8
  • 5. 5 Alta disponibilidad Medir la disponibilidad dando un porcentaje. Escala “punto nueve”: 100 – (tiempoCaido / periodoTiempo) * 100! Por ejemplo: caída de 1h en un día -> 95.83333% de disponibilidad caída de 1h en una semana -> 99.404% de disponibilidad Lo ideal es tener un 100% de disponibilidad. 9 Alta disponibilidad Un 100% de disponibilidad es no sufrir caídas no-programadas Los sitios web se conforman con alcanzar un 99.9% ó 99.99% 10
  • 6. 6 Alta disponibilidad ¿Cómo se consigue mejorar la disponibilidad? El uso de subsistemas redundantes y monitorizarlos mejora la disponibilidad del sistema global. Surgen conceptos derivados: –  disponibilidad de red –  disponibilidad de servidor –  disponibilidad de aplicación Si la disponibilidad de red es baja, quizás haya que mejorar el ancho de banda, y no tenga sentido centrar esfuerzos en mejorar las aplicaciones. 11 Alta disponibilidad Ejercicio: Buscar frameworks y librerías para diferentes lenguajes que permitan hacer aplicaciones altamente disponibles con relativa facilidad. Como ejemplo, examina PM2 https://github.com/Unitech/pm2 que sirve para administrar clústeres de NodeJS. 12
  • 7. 7 Índice Introducción Concepto de alta disponibilidad Concepto de escalabilidad Escalar un sitio web Conclusiones 13 Escalabilidad Cuando una persona sufre estrés, su capacidad para afrontar tareas se ve mermada. Cuando un sistema experimenta estrés, su capacidad para dar servicio también se ve afectada. 14
  • 8. 8 Escalabilidad Incremento del nivel de estrés: •  Cambios en las aplicaciones •  Fallos o caídas de algunas partes del sistema •  Incremento del número de máquinas •  Incremento repentino del número de usuarios del sitio La escalabilidad se refiere a la capacidad de un sistema de manejar la carga, y el esfuerzo para adaptarse al nuevo nivel de carga. 15 Escalabilidad escalabilidad = capacidad de un sistema de manejar la carga, y el esfuerzo para adaptarse al nuevo nivel de carga http://bit.ly/Z2II1G 16 Menorimpactoenescalabilidad Optimización del hardware Optimización del producto Optimización del código Diseño
  • 9. 9 Escalabilidad Si un sitio gana popularidad, o si llega una fecha señalada, puede incrementarse su carga. Para manejar esa carga, las empresas tienen más servidores de los necesarios normalmente. Decidir cómo añadir más recursos al sistema web es crucial en el diseño inicial y en el mantenimiento. En ocasiones, si la CPU del servidor está al 95% todo el tiempo, cambiándola puede ser suficiente para cierto nivel de carga. Pero si más adelante hay más carga, será insuficiente. 17 Escalabilidad Vemos que hay dos tipos de escalado: •  Ampliación vertical: incrementar la RAM, CPU, disco de un servidor. •  Ampliación horizontal: añadir máquinas a algún subsistema (servidores web, servidores de datos, etc). En ocasiones una ampliación vertical puede ser suficiente. 18
  • 10. 10 Escalabilidad ¿Cómo analizar la sobrecarga? •  Si la CPU está cerca del 100% todo el rato y el resto de subsistemas no está sobrecargado, sustituir por una CPU más potente. •  Si el uso de RAM es muy alto, veremos un uso alto de disco (por swapping). Incrementando la cantidad de RAM mejoraremos el rendimiento. •  Un ancho de banda insuficiente afectará al rendimiento. Contratando una mejor conexión será suficiente. 19 Escalabilidad Ejercicio: ¿Cómo analizar el nivel de carga de cada uno de los subsistemas en el servidor? Buscar herramientas y aprender a usarlas. ...¡o recordar cómo usarlas! 20
  • 11. 11 Índice Introducción Concepto de alta disponibilidad Concepto de escalabilidad Escalar un sitio web Conclusiones 21 Escalar un sitio web Tenemos que configurar tres niveles: –  máquinas como servidores web –  aplicaciones –  almacenamiento 22
  • 12. 12 Escalar un sitio web El nivel web se puede configurar balanceando la carga: •  uso de una máquina con software específico 23 Web01 Web03Web02 Balanceo de la carga Sitio web Escalar un sitio web También se puede usar un balanceador hardware: •  Local Director (Cisco) •  ServerIron (Foundry) •  BigIP (F5) 24 Web01 Web03Web02 Balanceo de la carga por hardware Sitio web
  • 13. 13 Escalar un sitio web El balanceador pasa peticiones a los servidores según el tráfico de la red. Hay varios algoritmos para decidir qué máquina final servirá cada petición: –  Por turnos (round-robin) –  Según el menor número de conexiones –  Por ponderación –  Por prioridad –  Según el tiempo de respuesta 25 Escalar un sitio web Escalar el nivel de aplicaciones requiere diseñar el software pensando en que se ejecute en varios servidores: •  Paralelismo •  Transparencia de ubicación: no debe haber dependencia de una máquina concreta para ejecutarse la aplicación. Es importante diseñar las aplicaciones desde el principio para que se ejecuten en varios servidores. Adaptar posteriormente una aplicación dependiente de cierto servidor puede ser costoso. 26
  • 14. 14 Escalar un sitio web Escalar el nivel de almacenamiento es complejo y depende del tipo de servicios a ofrecer: •  LDAP: Protocolo Ligero de Acceso a Directorios •  NFS: Sistema de archivos de red •  Bases de datos Cada uno de estos mecanismos suele requerir mecanismos y configuraciones diferentes. 27 Escalar un sitio web Ejercicio: Buscar ejemplos de balanceadores software y hardware (productos comerciales). Buscar productos comerciales para servidores de aplicaciones. Buscar productos comerciales para servidores de almacenamiento. 28
  • 15. 15 Índice Introducción Concepto de alta disponibilidad Concepto de escalabilidad Escalar un sitio web Conclusiones 29 Conclusiones Conceptos clave: escalabilidad y alta disponibilidad. Monitorización para detectar problemas y determinar posibles mejoras del sitio web. La escalabilidad se suele implementar replicando servidores para las mismas tareas. Conseguir disponibilidad y escalabilidad mediante balanceo de carga. 30