1. Escalabilidad en Azure Web
Sites and SQL Database
Ing. Eduardo Castro Martinez, PhD
Microsoft SQL Server MVP
Correo electrónico: ecastro@grupoasesor.net
Twitter: edocastro
5. Descripción del escenario
La carga de su sitio varía con el tiempo.
Usted necesita adaptarse.
Sin problemas.
5
6. Los perfiles de carga
6
LOTE
AUMENTO
Carga
No
carga
Carga
PREVISIBLE
NO PREVISIBLE
7. Paso 1: Preservar el ancho de banda del
servidor
PROBLEMA:
Sus servidores están desperdiciando el ancho de
banda que sirve archivos estáticos.
7
8. Paso 1: Preservar el ancho de banda del
servidor
SOLUCIÓN:
Servir archivos estáticos en almacenamiento blob.
Este es un paso hacia la entrega de contenido a partir
de una red de distribución de contenidos (CDN).
8
9. Paso 2: Caché
PROBLEMA:
Sus servidores tienen recursos finitos.
Usted no quiere repetir el trabajo que usted no tenga
que hacerlo.
9
10. Paso 2: Caché
SOLUCIÓN:
Almacene el ASP.NET page output cache en el
Windows Azure Caching Service
10
11. Paso 3: Escalamiento Manual
PROBLEMA:
Usted necesita más recursos de servidor.
11
12. Paso 2: Escalamiento manual
SOLUCIÓN:
Agregar más servidores (escala horizontal).
Utilice servidores más potentes (escala vertical).
12
14. Paso 3: Auto-escalamiento
PROBLEMA:
Tiempo de reacción de escalamiento Manual significa
interrupciones.
Escalar de forma manual implica acción humana.
14
19. Descripción del escenario
Su sitio no está listo cuando se implementa en la
producción.
Es necesario añadir nuevas características.
Cambio añade riesgo.
19
20. Paso 1: Administrar el esquema de base
de datos
PROBLEMA:
Su base de datos y código de las aplicaciones
necesitan mantenerse en sincronía.
20
21. Paso 1: Administrar el esquema de base
de datos
SOLUCIÓN:
Utilice Entity Framework Data
Migrations.
21
22. Base de datos SQL Azure
• Base de datos relacional -como-un-servicio, totalmente administrado por
Microsoft
• Diseñado para aplicaciones en la nube
Plataforma de base de datos de
nivel empresarial con la
economía nube
23. SQL Database - Niveles de servicio de
base de datos
• •• •••
• •• •••
24. Rendimiento predecible
• Básico / Standard /
•Web / Business
Premium
Máquina
Escribe
Lee
Memoria
DB 1
DB 2
DB 3
DB 4
DB 7
DB 5 DB 6
DB 8
DB 9
Máquina
Escribe
Lee
Memoria
DB 1
DB 2
DB 3
DB 4
DB 7
DB 5 DB 6
DB 8
DB 9
DB 1
DB 2
DB 3
DB
4
DB 7
DB 5
DB
6
DB 8
DB 9
Vecino
ruidoso!
Delimitadores
eliminan
vecinos
ruidosos
25. Opciones de escalabilidad en la base de
datos SQL Azure
• Rendimiento previsible: escalamiento hacia arriba o
hacia abajo (vertical)
• Cambie de niveles de servicio para una base de datos dada, con
base en las necesidades de capacidad / rendimiento
• Escalamiento elástico: Horizontal
• Añadir o eliminar bases de datos como más o menos capacidad /
rendimiento según sea necesario
26. Opciones de escalabilidad en la base de
datos SQL Azure
Premium
Estándar
Básico
Premium
Estándar
Básico Básico Básico Básico Básico Básico
Escalamiento OUT / IN
Escala hacia arriba / abajo
27. Rendimiento escalable
• Básico,Estándar, y Premium proporcionan el aumento de los niveles de rendimiento
• El rendimiento se expresa en unidades de rendimiento de base de datos (DTU)
• DTU es una medida combinada de la CPU, IO lectura, IO escritura, y la memoria
• Escala de rendimiento arriba / abajo a través del portal, las API, PS, o T-SQL
para reflejar la demanda real o anticipada
• Base de datos permanece en línea, durante el cambio
• Facturación por hora
B S0
S1
S2
P1
P2
P3
DTU 5 10 20 50 100 200 800
28. Unidad de Rendimiento de Base de
Datos- DTU
Monitoreo
% De Nivel de rendimiento actual
Utilización
75%
Leer
50%
Escribir
50%
UPC
60%
Memoria
Cuadro delimitador
Calcular
Escribe
Lee
DB carga de
trabajo
Memoria
Representa la capacidad relativa (recursos)
asignado a la base de datos
Medida de CPU, la memoria, y lecturas y escrituras
Simplifica las opciones selección de rendimiento
29. Nuevos niveles de rendimiento
Básico Estándar Prima
Niveles de Desempeño
(DTU)
5 S0: 10
S1: 20
S2: 50
P1: 100
P2:200
P3: 800
Resultados de ASDB 16600 tx/hora S1: ,520 tx/minuto
S1: ,940 tx/minuto
S2: 2570 tx/minuto
P1: 105 tx/segundo
P2: 228 tx/segundo
P3: 735 tx/segundo
El tamaño máximo de DB 2GB 250GB 500GB
Precio * por hora (mes) 0,0069 dólares (~ $ 5) S0: 0,0208 dólares (~ $ 15)
S1: $ 0,0417 (~ $ 30)
S2: 0,1042 dólares (~ $ 75)
P1: 0,6458 dólares (~ $
465)
P2: $ 1.292 (~ $ 930)
P3: $ 5.167 (~ $ 3720)
* A partir de 1 de noviembrest
30. Gobernanza de Recursos
• Las solicitudes de recursos no se rechazan, pero se ponen en cola
• La sobrecarga puede dar lugar a transacciones de larga ejecución o posiblidad
RESULTADO
UPC
Escribe
Lee
UPC
Escribe
Lee
de timeout
SELECT * FROM a
JOIN b ON …
UPC
Escribe
Lee
40. Descripción del escenario
Ejecución de un sitio real requiere múltiples
ambientes internos.
Disponibilidad global requiere múltiple
implementaciones en todo el mundo.
31
41. Paso 1: Dev / Test
PROBLEMA:
La creación de entornos de servidor web de
desarrollo requiere mucho tiempo.
Usted necesita ver cómo su código qu se ejecuta en
otro lugar antes de implementar el despliegue.
32
42. Paso 1: Dev / Test
SOLUCIÓN:
Consistencia de Ambiente a través de la
configuración de despliegue en Windows Azure Web
Sites o imágenes de VM.
Ahorro por pagar sólo por lo que usted necesita.
33
43. 33% 25% DESCUENTO
DESCUENTO
Máquinas virtuales
RESERVADO WEB SITIOS
NUBE DE SERVICIOS,
HDINSIGHT
$150
Crédito mensual
VISUAL STUDIO ULTIMATE
CON MSDN
NO
Tarjeta de crédito requerida
$100
Crédito mensual
VISUAL STUDIO PREMIUM
CON MSDN
$50
Crédito mensual
VISUAL STUDIO PROFESIONAL
CON MSDN
44. Paso 2: Alcance Global
PROBLEMA:
Es difícil de implementar un entorno consistente en
múltiples centros de datos.
35
45. Paso 2: Alcance Global
SOLUCIÓN:
Utilice el flujo de trabajo de implementación
automatizada para garantizar la coherencia en
proceso de implementación.
36
46. Paso 3: Continuos Delivery
PROBLEMA:
Los problemas y errores en su código se hacen más
difíciles de arreglar cuánto más tarde en obtener
información sobre ellos.
El despliegue es una operación arriesgada, propenso
a errores.
37
47. Paso 3: Entrega contínua
SOLUCIÓN:
Utilice integración continua para automatizar compilación,
pruebas de integración y pruebas unitarias.
Utilice el flujo de trabajo de implementación automatizada
para garantizar la coherencia en proceso de
implementación.
38
Notas del editor
Fastest Growing Hypervisor, taking share from VMWare”
2 releases of Hyper-V since ESX 5.1 (WS2012 and WS2012 R2)
Hyper-V share is growing 3x that of VMW over the past 2 years
Hyper-V steadily taking over a point of share per quarter
Microsoft in the Gartner Virtualization Magic Quadrant for the 3rd straight year and is the only vendor moving up and to the right
Over 50 new services released this year
Compute & Storage Capacity doubling every 6 – 9 months