Fast tracktothecloud carlescolell-softeng-20110331

609 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
609
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Fast tracktothecloud carlescolell-softeng-20110331

  1. 1. Migrando una gran aplicación a proyecto:Barcelona, 31 de Marzo del 2011Carlos Colell SorinasDirector Generalccolell@softeng.es
  2. 2. Í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 ? ¿Cómo di li i l d diseñar una aplicación para Cloud / Azure? Conclusiones
  3. 3. Perfil de compañíaAcerca de SOFTENGNuestras credenciales
  4. 4. Perfil de compañíaAcerca de SOFTENG Consultoría e ingeniería de software desde 97 Trabajamos “sólo” con tecnología Microsoft. Expertos en soluciones en infraestructura Microsoft y Desarrollo de proyectos Web. Fabricante de la primera plataforma SaaS para proyectos Web en Azure.
  5. 5. Perfil de compañíaCredenciales SOFTENG
  6. 6. ¿Qué se migró a Azure?Softeng Portal Builder Qué es en esencia Prestaciones destacadas
  7. 7. Softeng Portal BuilderTM - Visión generalLa esencia de Portal Builder Plataforma empresarial para proyectos Web Potencia a las empresas a través de la Web Productividad, Autonomía, Rentabilidad On-premise o en Azure (SaaS Anywhere ) O i A (S S A h TM Solución calificada como innovadora por el Ministerio de Ciencia e Innovación
  8. 8. Softeng Portal BuilderTM - Visión generalPrestaciones destacadasMARKETING TI Edit-in-Place Backoffice Studio Traducción simultánea Workflow Engine Optimización SEO Portal Builder Framework Mapa de calor Modelador de entidades Analítica de visitas integrada Integrador de aplicaciones
  9. 9. Softeng Portal BuilderTM - Visión generalPantalla de “Edit-in-Place” Actualice fácilmente los contenidos id desde el propio Site Navegue, haga clic en el texto o imagen que desee cambiar , guarde y publique. publique Así de simple !
  10. 10. Softeng Portal BuilderTM - Visión generalPantalla “Mapa de calor” Mejore la eXperiencia de sus usuarios Analice visualmente el comportamiento de los visitantes y optimice el site i i l i para obtener más conversiones.
  11. 11. Softeng Portal BuilderTM - Visión generalPantalla de “Analítica de Visitas” Analice la efectividad de su webb La analíticas integradas ofrecen i t d f información en contexto acerca de las visitas y objetivos conseguidos permitiendo tomar buenas decisiones.
  12. 12. Softeng Portal BuilderTM - Visión generalProyectos destacados Industria Gobierno ConstrucciónSalud Interiorismo Media
  13. 13. Softeng Portal Builder& Windows Azure SaaS “pide” PaaS pide ¿Por qué se optó por Azure? Azure complementa a Portal Builder Beneficios obtenidos con Azure
  14. 14. Softeng Portal BuilderTM & Windows AzureSaaS “pide” PaaS…
  15. 15. Softeng Portal BuilderTM & Windows Azure¿Por qué movernos a la nube ? Maximizar los beneficios de “SaaS” Aumentar confianza en nuestra solución Evitar inversión por adelantado d l d Reducir costes de mantenimiento Poder escalar rápido + evitar “estimar” Por compromiso de innovación Facilitar el cálculo del pago por uso
  16. 16. 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  Eliminar costes de mantenimiento
  17. 17. Moviendo una aplicación a p ¿Cómo empezar? Sorteando dificultades Resultado final
  18. 18. Moviendo una aplicación a Azure¿Por donde empezar? 1-Microsoft.com/WindowsAzure 2-Abre una cuenta gratuita: Experimenta con una App sencilla sencilla. 3-¿No funciona a la primera? 3 N f i l i ? Buscar en internet…  4-Opción de curso de iniciación
  19. 19. Moviendo una aplicación a AzureSorteando dificultades… Varios Básicos: Se requiere proyecto VS "Web Application" en lugar de "Web Application", rutas de fichero con límite, algunos atributos Web Application , en web.config no soportados y otros por el estilo. DTC no soportado: Evitar la promoción de las transacciones a una transacción distribuida usando el DTC. Imposibilidad de depuración en p p p producción: Pasar a .NET 4.0 con Visual Studio 2010 y usar IntelliTrace. Adaptación de Scripts SQL: Los scripts DDL de SQL Server deben p p p adaptarse 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 …
  20. 20. Moviendo una aplicación a AzureRecomendaciones Básicas Usar al menos 2 instancias de Azure: Sólo así tenemos verdadera alta disponibilidad y con SLA de Microsoft. Microsoft Mejor cuanto más pequeñas: En general, es mejor usar 4 j p q g j instancias pequeñas que 2 grandes. El entorno “staging” también consume staging consume… Si paramos una instancia, también consume: Eliminarla El centro de Irlanda, funciona mejor que Amsterdam Monitoriza … de forma automatizada 
  21. 21. Moviendo una aplicación a Azure¿ Algo más habrá, no?
  22. 22. Moviendo una aplicación a AzureTimeout 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 fragmentos  Servicio Web: Que reciba y recomponga los fragmentos del archivo  Cliente: Ha de tener acceso a archivo para trocear y subirlo  Ej. Silverlight h Ej Sil li h http://blog.smarx.com/posts/uploading-windows-azure- //bl / / l di i d blobs-from-silverlight-part-1-shared-access-signatures
  23. 23. Moviendo una aplicación a Azure¿Buscador en Azure? Necesidad: Requeríamos continuar teniendo un sistema de búsqueda Problema: S P bl Search Server no está soportado en Windows Azure hS tá t d Wi d A Solución:  Lucene.NET  Programar escaneos desde Worker Role  Almacenamiento de índices en Blob Storage
  24. 24. Moviendo una aplicación a AzureActualizar 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 Solución: Descargar esquema d la BBDD, ejecutar comparación y S l ió D de l BBDD j t ió aplicar script diferencial en SQL Azure + Automatizarlo.
  25. 25. Moviendo una aplicación a Azure¡Qué fácil ha sido y que bueno soy !
  26. 26. Moviendo una aplicación a Azure¡ Azure es un milagro!
  27. 27. Migrando a Azure¡A producción ! ¡Y a por el ascenso!
  28. 28. Moviendo una aplicación a AzureA ver como va…-Consumo de Azure excesivo !-No hay backups !-La aplicación no escala ! La-La aplicación va lenta ! p¡La hemos liado! “Chiesss…”que no se entere el jefe !!
  29. 29. Moviendo una aplicación a Azure¿Que ha pasado? ¿Azure no va bien? ¿He sido yo ?
  30. 30. Diseñando para cloud p ¿Qué optimizar / mejorar ? Ejemplos concretos j Más retos Conclusiones
  31. 31. Diseñando para AzureSi 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 actualizar -> act ali ar Mayor Ma or coste• Elasticidad no automática - > Mayor coste
  32. 32. Diseñando para AzureDiseñ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 salida salida. Tamaño de la BD en SQL Azure Transferencia entre regiones Azure Cantidad de espacio consumido en storage Transacciones al sistema de ficheros (lectura y escritura) Conexiones AppFabric
  33. 33. Diseñando para Azure: EjemplosReducir consumo en SQL Azure (I) Situación: Por simplicidad, Softeng Portal Builder almacenaba 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 Azure 50GB  $354 56 € / mes A $354.56  Blob Storage 50GB  0.10 € / GB x mes x 50 = 5€ / mes
  34. 34. Diseñando para Azure: EjemplosReducir 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  BBDD ligera de descargar
  35. 35. Diseñando para Azure: EjemplosSistema 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) Problema 3 C P bl 3: Conviene t i tener l b k ’ en l nube. los backup’s la b Problema 4: No existe ninguna solución en el mercado. Problema 5: Un nuevo desarrollo … 
  36. 36. Diseñando para Azure: EjemplosSistema de backup (II): La solución Ventajas  Coste de almacenaje reducido: 0.15$ GB/mes  Si costes d t Sin t de transferencia f i  Descarga a local, bajo demanda
  37. 37. Diseñando para AzureMás retos que tuvimos que superar Mejora en la escalabilidad horizontal: Buscar en internet lo conseguido … “escalabilidad lineal en Azure” escalabilidad Azure Automatización de pruebas de carga en Azure: p g Simulamos N usuarios en Azure, levantando N instancias. Automatizar 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 Azure (mediante worker-roles y colas)
  38. 38. Diseñando para AzureConclusiones ≠ Funcionar en Azure Funcionar bien: No es igual adaptar una aplicación p p para que funcione a diseñarla p q para que sea óptima. Errores de q p arquitectura en el software clásico se magnifican en cloud. Azure ofrece grandes beneficios: … si diseñamos siguiendo arquitecturas orientadas a coste y a escalabilidad. Un beneficio inesperado para SOFTENG: Reconocimiento y Know-How Know How adquirido 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..
  39. 39. Diseñando para AzureAzure es increible !!, pero…
  40. 40. Tecnología y calidadRecursos 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:  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
  41. 41. proyecto: ¡ Gracias por su atención ! Carlos Colell Sorinas Director general ccolell@softeng.es http://es.linkedin.com/in/ccolell Twitter.com/ccolell Barcelona: Pau Claris, 162-164 2ª Planta Claris 162 164 2 Madrid: Avda. Doctor Arce, 14

×