2. Tipos de nube
Privada
(On-Premise)
Infrastructure
as a Service
Platform
as a Service
Storage
HW del Server
Networking
Servers
Bases de datos
Virtualización
Runtimes
Aplicaciones
Seguridad e Integración
Storage
HW del Server
Networking
Servers
Bases de datos
Virtualización
Runtimes
Aplicaciones
Seguridad e Integración
Storage
HW del Server
Networking
Servers
Bases de datos
Virtualización
Runtimes
Aplicaciones
Seguridad e Integración
Nosotros
Proveedor
Proveedor
Nosotros
Nosotros
Software
as a Service
Storage
HW del Server
Networking
Servers
Bases de datos
Virtualización
Runtimes
Aplicaciones
Seguridad e Integración
Proveedor
3. API APPS
Construye y consume
fácilmente APIs en la nube
WEB APPS
Aplicaciones Web que escalan
con nuestro negocio
LOGIC APPS
Automatiza procesos de
negocio contra SaaS y on-
premises
MOBILE APPS
Construye aplicaciones
móviles para cualquier
dispositivo
Azure App Service
4. WEB APPS
Funcionalidades disponibles:
• .NET, Node.js, Java, PHP, y Python
• WebJobs para tareas de larga duración
• Publicación desde VS integrada, debug
remoto
• CI con GitHub, BitBucket, VSTS
• Auto-load balance, Autoescalado, Geo DR
• Virtual networking y conexiones híbridas
• Slots para deploymentes de staging
Aplicaciones web corren como están
sin necesidad de cambios
5. Nuevas características para Mobile
apps:
• WebJobs para tareas de larga duración
• CI con GitHub, BitBucket, VSAuto-load
balance, Autoescalado, Geo DR
• Virtual networking y conexiones híbridas
• Slots para deploymentes de staging
Mobile services
con mucho más
MOBILE APPS
6. Logic Apps para automatización
simplificada
• Diseñador sin código para creación rápida
• Docenas de templates pre-armados para
arrancar
• Soporte Out of the boxpara aplicaciones SaaS
y on-premises populares
• Uso con API Apps custom creadas por
nosotros
• Biztalk APIs para escenarios de integración
expertos
Automatiza sistemas
SaaS y on-premises
LOGIC APPS
7. Easily use cloud or custom APIs:
• Dozens of built-in APIs for popular SaaS
• An ecosystem of APIs for any need
• Create and publish custom, reusable APIs
• Visual Studio tooling with one click publish
and remote debugging
• Automatic client SDK generation for many
languages
Crea, consume y hostea
APIs más fácilmente
API APPS
8. Planes y características
Free Shared Basic Standard Premium
Cuando usarlo Spikes, pruebas
de concepto
dev - test con
SSL
Producción con
bajo tráfico y
poca carga
Producción con
autoescalado y
manejo de
tráfico
avanzado
Producción
Más avanzado –
Conectores
Biztalk, etc
# cores Compartidos,
60 mins CPU
por día
Compartidos,
240 mins CPU
por día
1-4 1-4 1-8
RAM 1GB 0,5GB 1.75-7GB 1.75-7GB 1.75-14GB
SLA 99.95% 99.95% 99.95%
Dominio
custom &
certificados
no si si si si
Profiling remoto no no no si si
9.
10. Continuous Deployment para Web Apps
Web App
Production Slot
Repositorio de códigoWeb App
Staging Slot
Commit
Agilidad a través de Continuous Deployment
Auto-Swap
de los cambios
Hooks
Git pull
Developer
11. Microsoft Azure
Load Balancer
Runtime Database
Application Database
API Endpoint
Frontend (IIS ARR)
Publish Endpoint Blob Storage
File Server
Metering
Deployment
Server(s)
Arquitectura de una Web App
12. • 3 tipos de logs:
• Detailed Error Logging
• Failed Request Tracing
• Web Server Logging (W3C extended log format)
• Se puede hacer el log en el sistema de archivos (rolling files), table storage o
• blob storage
• Cuando se habilita el log de la aplicación, queda encendido por 12 horas
Log Streaming
13. • Open source .NET Foundation https://github.com/projectkudu/kudu
• Encargado de los deployments en App Services
• También puede correr fuera de Azure
• Deploys desde Git
• Build steps configurables
• Sitio y utilidades de Kudu “secretas”
Kudu & Site Extensions
14.
15. Tareas livianas con alto uso de CPU
run.cmd, run.bat run.exe run.ps1 run.sh run.php run.py run.js
BlobTrigger, TableTrigger, QueueTrigger,
ServicebusTrigger
Escala: Singleton, Multi-instancia
Tipo de job: On-Demand, Scheduled, Continuous
Características del
SDK de WebJobs:
Deployment: Portal, Visual Studio, CLI, Git
19. Beneficios de las API Apps
• Trae tu API como está
• .NET Web API / Node.js + Express
• Java / PHP y muchos más
• Control de Acceso Simple – no hay que cambiar el código para
habilitar la autenticación que viene incorporada
• Integración con Visual Studio
• Integración con Logic Apps
• Administración central de CORS
20. API Apps tiene en cuenta los mayores
problemas al construir y consumir APIs
Consume APIs
Authentication,
built-in to mobile and
web SDKs
SSO,
manejado por el
server
Generación de SDKs
Descubrimiento de
APIs
Galería – pública &
organizacional
Construye tu API
Web Apps++: Trae tu
API como está, en tu
lenguaje preferido
Control de acceso
simple
SSO Contrato de metadata
Estilo de
Microservicios
Expone APIs
enterprise
20
21. Consumiendo API Apps
• API Apps expone servicios HTTP
• La Metadata se expone usando Swagger 2.0
metadata
• Archivo JSON
• Ampliamente soportado
• Aplicaciones cliente
27. Almacenamiento estructurado
• Powered by SQL Database
• Soporta queries ricas
• Esquema dinámico
• Administración de los datos en:
• Azure Portal
• SQL Portal (Silverlight)
• SQL Management Studio
• REST API
• Azure CLI Tools
• SQL CLI
28. Scripts en Tablas del lado del servidor
Scripts Node.js
Intercepta requests CRUD
a las tablas
Pasa a SQL por default
Totalmente customizable
Backend
.NET Web API
en Visual Studio
MongoDB, Table Storage,
SQL out of the box
29. Custom API
• Endpoints no basados en tablas
• Accesibles desde
• GET
• POST
• PUT
• PATCH
• DELETE
• Para lógica node.js en scripts como los endpoints de
tablas
• Para .NET entregado a través de una WebAPI
• Expone cualquier funcionalidad que quieras
30.
31. Azure Functions
• Ejecución de código basado en eventos
• Serverless
• C#, JavaScript, F#, Python, PHP, Java, Bash, Batch, PS
• Basado en el SDK de WebJobs
36. using System;
public static void Run(TimerInfo myTimer, TraceWriter log)
{
log.Info($"Función con trigger por timer ejecutada el
{DateTime.Now}");
}
40. Mejores prácticas
• Autoescalado encendido & Sticky sessions apagado
• Hacer back up de la base de datos
• Hacer test de carga antes de poner en producción
• Configurar el failover automático con Azure Global Traffic Manager
• Automatizar los deploys usando los slots
• Testear el site recovery
• Usar Azure Rersource Groups
• Setear alertas de billing
• Bundling & minificación de recursos web
• Usar Azure CDN para los archivos estáticos
• Implementar las políticas de retry adecuadas para la BD