![Page 1: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/1.jpg)
Migrando una gran aplicación a
proyecto:
Barcelona, 31 de Marzo del 2011
Carlos Colell SorinasDirector [email protected]
![Page 2: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/2.jpg)
Índice de la presentación
Perfil de compañía
¿Qué se migró a Azure?
¿Por qué se optó por Azure ?
¿Cómo mover una aplicación hacia Azure ?
di li i l d¿Cómo diseñar una aplicación para Cloud / Azure?
ConclusionesConclusiones
![Page 3: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/3.jpg)
Perfil de compañíaPerfil de compañía
Acerca de SOFTENGAcerca de SOFTENG
Nuestras credenciales
![Page 4: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/4.jpg)
Perfil de compañía
Acerca de SOFTENG
Consultoría e ingeniería de software desde '97
Trabajamos “sólo” con tecnología Microsoft.
Expertos en soluciones en infraestructuraMicrosoft y Desarrollo de proyectos Web.
Fabricante de la primera plataforma SaaS paraproyectos Web en Azure.
![Page 5: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/5.jpg)
Perfil de compañía
Credenciales SOFTENG
![Page 6: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/6.jpg)
¿Qué se migró a Azure?¿Qué se migró a Azure?Softeng Portal Builder
Qué es en esencia
Prestaciones destacadasPrestaciones destacadas
![Page 7: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/7.jpg)
Softeng Portal BuilderTM - Visión general
La esencia de Portal Builder
Plataforma empresarial para proyectos Web
Potencia a las empresas a través de la Web
Productividad, Autonomía, Rentabilidad
O i A (S S A h TM)On-premise o en Azure (SaaS AnywhereTM)
Solución calificada como innovadora por el Solución calificada como innovadora por el Ministerio de Ciencia e Innovación
![Page 8: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/8.jpg)
Softeng Portal BuilderTM - Visión general
Prestaciones destacadas
MARKETING TI
Edit-in-Place Backoffice Studio
Traducción simultánea Workflow Engine
Optimización SEO
Mapa de calor
Portal Builder Framework
Modelador de entidadesMapa de calor
Analítica de visitas integrada
Modelador de entidades
Integrador de aplicaciones
![Page 9: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/9.jpg)
Softeng Portal BuilderTM - Visión general
Pantalla de “Edit-in-Place”
Actualice fácilmente los
idcontenidos desde el propio Site
Navegue, haga clic en el texto o imagen que imagen quedesee cambiar , guarde y publiquepublique.
Así de simple !
![Page 10: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/10.jpg)
Softeng Portal BuilderTM - Visión general
Pantalla “Mapa de calor”
Mejore la eXperiencia de sus usuarios
Analice visualmente el comportamiento de los visitantes y
i i l ioptimice el sitepara obtener más conversiones.
![Page 11: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/11.jpg)
Softeng Portal BuilderTM - Visión general
Pantalla de “Analítica de Visitas”
Analice la efectividad de su
bweb
La analíticas i t d f integradas ofrecen información en contexto acerca de las visitas y las visitas yobjetivos conseguidos permitiendo tomar permitiendo tomarbuenas decisiones.
![Page 12: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/12.jpg)
Softeng Portal BuilderTM - Visión general
Proyectos destacados
Industria Gobierno Construcción
Salud Interiorismo Media
![Page 13: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/13.jpg)
Softeng Portal Builder & Windows Azure
SaaS “pide” PaaSSaaS pide PaaS
¿Por qué se optó por Azure?
Azure complementa a Portal Builder
Beneficios obtenidos con Azure
![Page 14: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/14.jpg)
Softeng Portal BuilderTM & Windows Azure
SaaS “pide” PaaS…
![Page 15: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/15.jpg)
Softeng Portal BuilderTM & Windows Azure
¿Por qué movernos a la nube ?
Maximizar los beneficios de “SaaS”
Aumentar confianza en nuestra solución
d l dEvitar inversión por adelantado
Reducir costes de mantenimientoReducir costes de mantenimiento
Poder escalar rápido + evitar “estimar”
Por compromiso de innovación
Facilitar el cálculo del pago por uso
![Page 16: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/16.jpg)
Softeng Portal BuilderTM & Windows Azure
¿Por qué se optó por Azure? (I)
Azure => PaaS = Valor añadido vs IaaS
Evitar inversión en licencias
Elimina mucha complejidad
Reducir costes de despliegue Reducir costes de despliegue
Eliminar costes de mantenimiento
![Page 17: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/17.jpg)
Moviendo una aplicación a p
¿Cómo empezar?
Sorteando dificultades
Resultado final
![Page 18: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/18.jpg)
Moviendo una aplicación a Azure
¿Por donde empezar?
1-Microsoft.com/WindowsAzure
2-Abre una cuenta gratuita: Experimenta con una App sencillaExperimenta con una App sencilla.
3 N f i l i ? 3-¿No funciona a la primera? Buscar en internet…
4-Opción de curso de iniciación
![Page 19: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/19.jpg)
Moviendo una aplicación a Azure
Sorteando dificultades…
Varios Básicos: Se requiere proyecto VS "Web Application" en lugar de "Web Application", rutas de fichero con límite, algunos atributos de Web Application , rutas de fichero con límite, algunos atributosen web.config no soportados y otros por el estilo.
DTC no soportado: Evitar la promoción de las transacciones a una DTC no soportado: Evitar la promoción de las transacciones a unatransacción distribuida usando el DTC.
Imposibilidad de depuración en producción: Pasar a .NET 4.0 con p p pVisual Studio 2010 y usar IntelliTrace.
Adaptación de Scripts SQL: Los scripts DDL de SQL Server deben p p padaptarse para evitar utilizar cláusulas no soportadas por SQL Azure.
No existe servicio de SMTP en Azure: Usar servicios externos.
“FUNCIONA !!! “ Descubramos que viene luego …
![Page 20: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/20.jpg)
Moviendo una aplicación a Azure
Recomendaciones Básicas
Usar al menos 2 instancias de Azure: Sólo así tenemos verdadera alta disponibilidad y con SLA de Microsoftverdadera alta disponibilidad y con SLA de Microsoft.
Mejor cuanto más pequeñas: En general, es mejor usar 4 j p q g jinstancias pequeñas que 2 grandes.
El entorno “staging” también consumeEl entorno staging también consume…
Si paramos una instancia, también consume: Eliminarla
El centro de Irlanda, funciona mejor que Amsterdam
Monitoriza … de forma automatizada
![Page 21: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/21.jpg)
Moviendo una aplicación a Azure
¿ Algo más habrá, no?
![Page 22: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/22.jpg)
Moviendo una aplicación a Azure
Timeout NLB Azure 1 minuto
Situación: Azure impide que una petición dure > 1 minuto.
Problema: ¿Qué pasa al subir archivos grandes?
Solución: Subir archivo por fragmentosSolución: Subir archivo por fragmentos
Servicio Web: Que reciba y recomponga los fragmentos del archivo
Cliente: Ha de tener acceso a archivo para trocear y subirlo
Ej Sil li h h //bl / / l di i d Ej. Silverlight http://blog.smarx.com/posts/uploading-windows-azure-blobs-from-silverlight-part-1-shared-access-signatures
![Page 23: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/23.jpg)
Moviendo una aplicación a Azure
¿Buscador en Azure?
Necesidad: Requeríamos continuar teniendo un sistema de búsqueda
P bl S h S tá t d Wi d AProblema: Search Server no está soportado en Windows Azure
Solución:
Lucene.NET
Programar escaneos desde Worker Role
Almacenamiento de índices en Blob Storage
![Page 24: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/24.jpg)
Moviendo una aplicación a Azure
Actualizar esquemas de BD
Necesidad: Despliegue de cambios de esquema de BD local a SQL Azure para nuevas versiones de la aplicación o producto.
Problema: VSTS DB Edition con GDR no soporta SQL Azure
S l ió D d l BBDD j t ió Solución: Descargar esquema de la BBDD, ejecutar comparación y aplicar script diferencial en SQL Azure + Automatizarlo.
![Page 25: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/25.jpg)
Moviendo una aplicación a Azure
¡Qué fácil ha sido y que bueno soy !
![Page 26: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/26.jpg)
Moviendo una aplicación a Azure
¡ Azure es un milagro!
![Page 27: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/27.jpg)
Migrando a Azure
¡A producción ! ¡Y a por el ascenso!
![Page 28: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/28.jpg)
Moviendo una aplicación a Azure
A ver como va…
-Consumo de Azure excesivo !
-No hay backups !
La aplicación no escala !-La aplicación no escala !
-La aplicación va lenta !p
¡La hemos liado! “Chiesss…” que no se entere el jefe !!que no se entere el jefe !!
![Page 29: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/29.jpg)
Moviendo una aplicación a Azure
¿Que ha pasado? ¿Azure no va bien?
¿He sido yo ?
![Page 30: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/30.jpg)
Diseñando para cloudp
¿Qué optimizar / mejorar ?
Ejemplos concretosj
Más retos
Conclusiones
![Page 31: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/31.jpg)
Diseñando para Azure
Si sólo “movemos” Apps a Cloud..sin que la arquitectura esté diseñada orientada a cloud, obtendremos una aplicación que:
• Consumirá recursos excesivos-> Mayor coste
• Escalabilidad limitada -> Mayor coste
• Rendimiento mejorable -> Mayor coste
• No tendremos backups -> Mayor coste
Costará más de act ali ar Ma or coste• Costará más de actualizar -> Mayor coste
• Elasticidad no automática - > Mayor coste
![Page 32: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/32.jpg)
Diseñando para Azure
Diseñar orientado a costes significa…
Usar patrones para optimizar el consumo de:
Computación: Número y tamaño de instancias desplegadas
Ancho de banda: En GB/mes de entrada y de salidaAncho de banda: En GB/mes de entrada y de salida.
Tamaño de la BD en SQL Azure
Transferencia entre regiones Azure
Cantidad de espacio consumido en storageCantidad de espacio consumido en storage
Transacciones al sistema de ficheros (lectura y escritura)
Conexiones AppFabric
![Page 33: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/33.jpg)
Diseñando para Azure: Ejemplos
Reducir consumo en SQL Azure (I)
Situación: Por simplicidad, Softeng Portal Builderalmacenaba los recursos de las aplicaciones en SQL Server (videos, imágenes, documentos)
Problema: En Azure, no hay BBDD mayores de 50 GB (de momento) Coste elevado comparado con Storage (71 veces + caro)
SQL A 50GB $354 56 € / SQL Azure 50GB $354.56 € / mes Blob Storage 50GB 0.10 € / GB x mes x 50 = 5€ / mes
![Page 34: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/34.jpg)
Diseñando para Azure: Ejemplos
Reducir consumo en SQL Azure (II)
Solución Modificar capa de persistencia para almacenar archivos en
Blob storage
Ventajas Ahorro en coste Mucho más escalable y mejor rendimiento Mucho más escalable y mejor rendimiento BBDD ligera de descargar
![Page 35: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/35.jpg)
Diseñando para Azure: Ejemplos
Sistema de backup (I)
Situación: Por si hubieran errores humanos, requerimos disponer de un sistema de backup / restore controlado.
Problema 1: SQL Azure no ofrece backup’s
Problema 2: Tenemos datos en Blob Storage (archivos)
P bl 3 C i t l b k ’ l bProblema 3: Conviene tener los backup’s en la nube.
Problema 4: No existe ninguna solución en el mercado.Problema 4: No existe ninguna solución en el mercado.
Problema 5: Un nuevo desarrollo …
![Page 36: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/36.jpg)
Diseñando para Azure: Ejemplos
Sistema de backup (II): La solución
VentajasVentajas Coste de almacenaje reducido: 0.15$ GB/mes
Si t d t f i Sin costes de transferencia Descarga a local, bajo demanda
![Page 37: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/37.jpg)
Diseñando para Azure
Más retos que tuvimos que superar
Mejora en la escalabilidad horizontal: Buscar en internet lo conseguido “escalabilidad lineal en Azure”internet lo conseguido … escalabilidad lineal en Azure
Automatización de pruebas de carga en Azure: p gSimulamos N usuarios en Azure, levantando N instancias.
Automatizar el proceso de actualización y despliegueAutomatizar el proceso de actualización y despliegue
Elasticidad automática: Creamos o destruimos instancias según determinadas condiciones, configurables.
Planificador: Sistema para iniciar tareas diferidas desde Planificador: Sistema para iniciar tareas diferidas desdeAzure (mediante worker-roles y colas)
![Page 38: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/38.jpg)
Diseñando para Azure
Conclusiones
Funcionar en Azure ≠ Funcionar bien: No es igual adaptar una aplicación para que funcione a diseñarla para que sea óptima. Errores de p p q p q parquitectura en el software clásico se magnifican en cloud.
Azure ofrece grandes beneficios: … si diseñamos siguiendo Azure ofrece grandes beneficios: … si diseñamos siguiendoarquitecturas orientadas a coste y a escalabilidad.
Un beneficio inesperado para SOFTENG: Reconocimiento y Know How Un beneficio inesperado para SOFTENG: Reconocimiento y Know-Howadquirido gracias a la gran inversión realizada, nos permite ayudar a otras empresas a reducir drásticamente el coste de migrar a cloud.
Backup y pruebas de carga: Necesidades irrenunciables…
Automatizar despliegues y auto-elasticidad: Muy recomendable..
![Page 39: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/39.jpg)
Diseñando para Azure
Azure es increible !!, pero…
![Page 40: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/40.jpg)
Tecnología y calidad
Recursos y más información
Caso de estudio de Softeng Portal Builder en Azure (Microsoft Corporation) http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?CaseStudyID=4000008180
Caso de estudio de Softeng Portal Builder en Azure (Microsoft Ibérica) http://www.microsoft.com/business/smb/es-es/isv/casosdeexito.mspx
Presentación de Softeng Portal Builder con Steave Ballmer (CEO Microsoft)g http://www.softeng.es/es-es/noticias/webcasts-eventos/presentacion-de-softeng-portal-builder-junto-steve-ballmer.html
Presentación de Softeng Portal Builder con IDC en evento Gestión de contenidos http://www.softeng.es/es-es/empresa/evento-idc-2010.html
Artículo publicado en CMSWire: http://www.cmswire.com/cms/web-cms/softeng-portal-builder-runs-on-windows-azure-007367.php
Artículo publicado en CMScritic: Artículo publicado en CMScritic: http://www.cmscritic.com/softeng-portal-builder%E2%84%A2-the-first-platform-for-web-projects-operating-in-microsoft-azure
Artículo publicado en Microsoft http://blogs.msdn.com/b/juanjocarmena/archive/2011/03/10/probada-la-escalabilidad-lineal-con-softeng-portal-builder.aspx
Videos-demo de Softeng Portal Builder http://www.softeng.es/es-es/productos/portal-builder-cms/showroom-portal-builder.html
![Page 41: Fast tracktothecloud carlescolell-softeng-20110331](https://reader033.vdocuments.net/reader033/viewer/2022052316/55873787d8b42a0b238b464d/html5/thumbnails/41.jpg)
proyecto:¡ Gracias por su atención !
Carlos Colell SorinasCarlos Colell SorinasDirector general
[email protected]://es.linkedin.com/in/ccolellhttp://es.linkedin.com/in/ccolellTwitter.com/ccolell
Barcelona: Pau Claris 162-164 2ª PlantaBarcelona: Pau Claris, 162 164 2 Planta
Madrid: Avda. Doctor Arce, 14