Azure: Arquitecturas recomendadas para aplicaciones en la nube

Microsoft ha publicado de forma totalmente gratuita una serie de guias, patrones  y conjunto de arquitecturas recomendadas para las aplicaciones en la nube. Las podeis consultar desde aqui con un enlace a todas las arquitecturas que estan disponibles en la web de Microsoft.

 

Azure Architectures

La lista de arquitecturas recomendadas son todas en ingles:

  1. Azure Application Architecture Guide: link
  2. Arquitecturas de referencia para la nube: link
  3. Patrones de diseño para la nube: link
  4. Procedimientos recomendados para la nube: link

Azure Developers

Además tambien existe una guía para empezar como desarrolladores en Azure que os dejo aqui: azure-developers-guide

Vale la pena leerlas todas porque aportan muchos conceptos nuevos para el desarrollo de aplicaciones nuevas, migración a la nube de soluciones actuales on-premise y despliegue para puesta en marcha de aplicaciones en la nube.

Anuncios

Azure: API Management para gobernar todo nuestro negocio

api-azure-logo

Antes de entrar con Azure, vamos a definir de forma simple que es un API Management y que características debe tener para ofrecer toda su potencia a las organizaciones que deciden implementarlo y conocer los competidores de APIs más importantes actualmente.

Para mí, básicamente es el proceso de administrar, crear, publicar y suministrar los datos y servicios de una empresa a todo el mundo a través de un sistema integrado e independiente de nuestro backend y exponer servicios del negocio a otras aplicaciones y partners sobretodo en escenarios de movilidad y cloud de forma controlada y segura.

Las características que ofrece un API Management suelen ser:

  • Gateway de acceso a las APIs
  • Portal para Desarrolladores
  • Portal para Gestión de las APIs
  • Documentación de las APIs
  • Políticas de uso de las APIs
  • Políticas de seguridad
  • Monetización de las APIs
  • Monitorización del trafico
  • Reportes y analíticas de uso

 

Soluciones API Management

Para tener una visión global del mundo de los APIs management y los vendors disponibles, os dejo una foto real de todo el ecosistema actual con los proveedores más importantes en el mercado.

api-esquema-vendorsComo vemos en el diagrama, la oferta del mercado es bastante grande, ya que, el negocio de las APIs esta en auge y como profesionales debemos valorar que caracteristicas y funcionalidades ofrecen cada una de ellas.

 

Microsoft Azure API Management

Es la solución que ofrece Microsoft a sus clientes para crear rápidamente puertas de enlace API modernas para servicios de back-end existentes hospedados en cualquier lugar.

api-azure-diagram

En la web oficial de Microsoft Azure API Management, tenemos toda la información disponible de las caracteristicias, documentación y precios para crear en cuestion de minutos un portal para nuestras APIs.

En este video podemos ver resumido en que consiste:

 

 

Un video más detallado:

api-azure-video

Como conclusión, hoy en dia, todas las arquitecturas de software modernas y empresas en proceso de transformación digital deben tener en cuenta en su estrategia empresarial el uso API Management dentro de su organización para exponer y ofrecer todos sus servicios de negocio para partners, aplicaciones de Mobilidad, Cloud, Saas, B2B, etc.

Como instalar Mosquitto Server MQTT Broker en Windows para notificaciones push

mosquitto-server-logo

Mosquitto es un message broker open source que implementa el protocolo MQTT, originalmente diseñado por IBM para utilizarlo como mensajeria ligera, muy útil hoy en dia para usar con Arduino y dispositivos IoT como sensores, sistemas de monitorización y diagnóstico, etc. pero también lo podemos usar como servidor de notificaciones push.

Tiene clientes para los principales lenguajes actuales: client libraries y el protocolo MQTT es un OASIS standard con lo que tiene soporte y continuidad de la comunidad.

Recientemente, he tenido que valorar este broker para usarlo como sistema de notificaciones push para una aplicación en Android (sin tener que depender de los Google Service) y aunque es bastante simple instalarlo se deben tener en cuenta una serie de pasos que me gustaria compartir por si alguien tiene la necesidad de montarlo en un servidor Windows.

Después de leer varios blogs y foros, algunos confusos o complejos de entender, encontré este video donde se explica paso a paso el proceso de instalación de Mosquitto:

En mi caso, lo he instalado en un Windows Server 2008R2 y también en un Windows 10 sin problemas, eso sí, necesitamos el .NET Framework 2.0 y 3.5 porque necesita alguna dll para funcionar, sino es posible que se instale corrrectamente el servicio pero luego no funcione las publicaciones/suscripciones a los topics.

Nos leemos!!

 

Software Architecture Conference 2015

Durante el mes de Marzo, ha tenido lugar la Software Architecture Conference 2015 organizada por O’Reilly un evento imprescidenble para todos los arquitectos, teams leads y desarrolladores interesados en las nuevas formas de arquitectura de construir software y arquitecturas agiles que me parecen muy interesantes.

Como muestra del evento, aqui podeis ver algunos videos

5 Reasons To Attend O’Reilly’s Software Architecture Conference

Agile Architecture – Molly Dishman & Martin Fowler

No os lo perdais!!

Microsoft Foro Arquitectos 2015

El pasado mes de Enero se realizo en las oficinas Microsoft Madrid el Foro de Arquitectos 2015 un evento donde se dan varias charlas muy interesantes sobre como crear y migrar nuestras soluciones a un entorno cloud y otros temas que os dejo aqui:

 

 

La lista de charlas fue la siguiente:

9:00 – 9:30 Registro
9:30 – 10:45 CQRS/ES – Cambiando tu forma de pensar
10:45 – 12:00 Fuentes de datos e integraciones de aplicaciones
12:00 – 12:30 Coffee break
12:30 – 13:45 Caché en Azure a fondo
13:45 – 15:00 Rendimiento y monitorización en aplicaciones en la nube

Para los que no pudimos asistir al evento, Microsoft a publicado los documentos de las charlas de forma libre en su blog MSDN. Aqui teneis los enlaces

CQRS/ES – Cambiando tu forma de pensar

CQRS y Event Sourcing no son conceptos que se usen a menudo en el día a día de nuestras aplicaciones, pero si estás desarrollando una aplicación con una gran cantidad de usuarios concurrentes los cuales están usando/modificando el mismo conjunto de datos, deberías tener en cuenta estos patrones.

http://www.slideshare.net/luisruizpavon/foro-arquitectos-de-microsoft-2015-cambiando-tu-forma-de-pensar

Fuentes de datos e integraciones de aplicaciones

En la siguiente charla abordaremos diferentes modelos de persistencia de datos y como encajan en nuestras aplicaciones empresariales, intentando enfocar aquellos puntos en los que pueden ser útiles. Al mismo tiempo hablaremos de integraciones entre estos modelos de datos, tanto dentro de una misma solución como entre diferentes soluciones empresariales.

Foro arquitectos.pptx

Caché en Azure a fondo

La caché es una memoria más pequeña y rápida que la de nuestro almacén de información, por lo que su uso se ha extendido desde el hardware hasta el software. Con la evolución de las tecnologías hacia internet y la utilización de diferentes servidores en entornos cloud, se ha creado la necesidad de desarrollar sistemas de caché distribuidos. Microsoft Azure nos provee de diferentes servicios de caché distribuida, pero debemos aprender a utilizarlos de la forma más eficiente. A lo largo de esta charla revisaremos los sistemas de caché disponibles y cómo podemos explotarlos en nuestras aplicaciones.

http://es.slideshare.net/fernandoescolar/foro-de-arquitectos-cach-en-azure-a-fondo

Rendimiento y monitorización en aplicaciones en la nube

Cuando hablamos de aplicaciones en la nube, tenemos que ser plenamente conscientes, de que si bien, son unos entornos dónde podemos tener un gran escalado horizontal, el escalado vertical no es tan sencillo ni barato, por lo que siempre querremos que nuestras aplicaciones escalen horizontalmente.

http://www.slideshare.net/lfraile/validando-la-escalabilidad-de-la-arquitectura

 

Que los disfruteis!!

 

Libro Gratis Principios SOLID

Libro en formato Pdf bajo licencia Creative Commons, donde aprender que es SOLID, basado en los principios de diseño y desarrollo descritos por Robert C. Martin, apodado ‘Uncle Bob’, en su famoso articulo  http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod

El temario del libro es este:

SRP Single Responsibility Principle A class should have one, and only one, reason to change.
OCP Open Closed Principle You should be able to extend a classes behavior, without modifying it.
LSP Liskov Substitution Principle Derived classes must be substitutable for their base classes.
DIP Dependency Inversion Principle Depend on abstractions, not on concretions.
ISP Interface Segregation Principle Make fine grained interfaces that are client specific.

Fuente oficial: http://lostechies.com

Descarga: http://lostechies.com/wp-content/uploads/2011/03/pablos_solid_ebook.pdf

Guias de Arquitectura Microsoft PAG y P&P

Lista de las guias disponibles de Microsoft para consultar y descargar en formato Pdf y saber como construir aplicaciones empresariales:

Guias para Arquitectos:

Guias para Desarrolladores:

Diagrama principal de la arquitectura con WCSF:
Pagina Principal WCSF: