GuilleSQL :: Microsoft SQL Server, SSIS, y más !!

Archivo de Diciembre de 2017

Azure Load Balancer

Azure Load Balancer es un Balanceador de Carga de nivel 4 (Transporte: TCP y UDP) capaz de distribuir el tráfico entrante entre un conjunto de VMs disponibles/saludables de Azure, en base a un algoritmo de distribución de carga basado en hashes. De este modo conseguimos una interesante solución de Alta Disponibilidad y Rendimiento para nuestras Aplicaciones en Azure, tanto para el balanceo del tráfico externo (ej: tráfico de Internet hacia Frontales Web) como interno (tráfico de Frontales Web a Servidores de Aplicaciones), soportando también NAT (Network Address Translation) para enrutar tráfico entre direcciones IP públicas y privadas.

Azure Cloud Services

Microsoft Azure ofrece la solución Cloud Services, como una forma de desplegar Aplicaciones en Azure en formato PaaS (Platform as a Service), escalable, económica, y de confianza, bajo un modelo que distingue entre dos tipos de Roles: Web Roles y Worker Roles. Tiene las ventajas de permitir la conexión remota a las máquinas, la instalación de SW, y la posibilidad de conexión directa a una Virtual Network (VNet) de Azure, pero sin la complejidad de un modelo IaaS (Infrastructure as a Service) en el que tenemos que administrar completamente toda la infraestructura. Una solución intermedia entre el servicio de Web Apps y las Azure VMs.

Azure Network Connectivity

Azure ofrece múltiples soluciones de conectividad, desde conexiones privadas con alto ancho de banda y baja latencia para conectar redes On-Premise a Azure (ExpressRoute), pasando por conexiones VPN desde redes On-Premise o desde equipos individuares a Virtual Network (VNets) de Azure, hasta la creación de túneles VPN contra las VPC de Amazon AWS. Todo completo abanico de posibilidades de interconexión, para satisfacer todas nuestras necesidades de una forma fácil y segura, entre las que podremos elegir (o las podemos complementar entre sí) en función de nuestro caso concreto y de nuestro presupuesto.

Azure Active Directory (Azure AD)

Azure Active Directory (Azure AD) es la solución de Directorio y el Sistema de Gestión de Identidades de Microsoft en Azure, a través del cual, se puede gestionar la identidad y acceso de usuarios a las Aplicaciones, sean On-Premise on en Azure, independientemente del tipo de dispositivo (iOS, Android, Windows, MacOS, etc.).  Permite tanto la Sincronización de Usuarios (Same Sign-On) como la Federación de Usuarios (Single Sign-On: SSO), así como la integración con Proveedores de Identidad externos (ej: Facebook, Google, Linkedin, Amazon, etc.). Todo esto lo convierte en una solución flexible e ideal para facilitar la autenticación en nuestras Aplicaciones.

Azure Service Bus

Azure Service Bus es el principal servicio de entrega de mensajes en Azure, que garantiza la entrega de mensajes entre dos extremos aunque no estén conectados simultáneamente, soportando transacciones, detección de duplicados, expiración basada en tiempo, etc. Una solución ideal para la comunicación entre diferentes Aplicaciones (Service Bus Queues, Topics, & Relays) y el consiguiente desacoplamiento de las mismas, así como también sirve de mecanismo de comunicación entre Aplicaciones y Dispositivos/Usuarios (Notification Hubs),  o bien entre Dispositivos/Usuarios y las Aplicaciones (Event Hubs), en todos los casos de una forma fácil y rápida, tanto para entornos Cloud como On-Premise.

Azure CosmosDB

Azure CosmosDB es la evolución de DocumentDB, una base de datos NoSQL de Clave-Valor orientada a Documentos (datos no-estructurados), que ha sido diseñada, construida, y optimizada para JSON. Es una base de datos altamente escalable, elástica, segura (cifrada por defecto), consistente y altamente disponible, con un mínimo esfuerzo de mantenimiento y de desarrollo, y con soporte para replicación geográfica entre diferentes regiones Azure. Es la base de datos Mundial, la alternativa a Amazon DynamoDB. Se ofrece en formato DBaaS (Database as a Service) dentro de Azure, en modalidad de pago por uso. Ofrece soporte nativo para JavaScript (en lugar de T-SQL), SQL, transacciones sobre documentos JSON sin esquema, y programación de Procedimientos Almacenados, Triggers, y UDFs (Funciones Definidas por el Usuario). Además soporta múltiples APIs de acceso, como SQL, MongoDB, Cassandra, Azure Table, y Gremlin (Graph), facilitando la migración a Azure de aplicaciones existentes.

Azure Storage

Azure Storage es la solución de almacenamiento de Microsoft en Azure, masivamente escalable (podemos almacenar terabytes de información y satisfacer las más ambiciosas necesidades de Big Data), de pago por uso (no por capacidad), accesible desde REST API y desde los lenguajes de programación más comunes, replicado siempre al menos en tres sitios y con opciones adicionales de replicación geográfica, con soporte nativo de Tablas NoSQL y Colas (Queues), y con diferentes opciones de seguridad para compartir el acceso con terceras personas y aplicaciones (ej: Shared Access Signatures - SAS, Stored Access Policy, etc). Una solución muy completa, y uno de los principales pilares de Azure.

Azure Resource Manager (ARM)

Azure Resource Manager (ARM) es la nueva forma de desplegar y gestionar los recursos en Azure, definiendo Recursos, Grupos de Recursos, y Plantillas. En lugar de gestionar los Recursos de una forma individual y plana, con ARM podemos definir un Grupo de Recursos (una agrupación lógica o contenedor de Recursos) que puede representar un servicio completo (ej: un Blog, una aplicación de gestión, una granja de SharePoint, etc.) del cuál contendrá todos los Recursos necesarios, y sobre el que podremos delegar la administración. Además, podremos definir una Plantilla (Resource Group Template o ARM Template) utilizando una descripción JSON, que define un modelo de recursos del servicio, que podremos desplegar como una unidad lógica, de forma fácil y rápida.

Azure Traffic Manager

Azure Traffic Manager es un balanceador de tráfico de red integrado como un servicio de Azure, que permite distribuir el tráfico de red entre distintos destinos (end-points), los cuales pueden estar dentro o fuera de Azure, sean Web Apps, Azure VMs, o cualquier otro tipo de destino tcp. Es una solución basada en DNS y en la monitorización de la salud/disponibilidad de los destinos (end-points), que nos permite elegir entre diferentes algoritmos de gestión de tráfico, permitiendo enrutar el tráfico al destino más cercano (ej: distribución geográfica), repartir el tráfico entre varios destinos (distribution: según los pesos asignados), o enrutado en caso de fallos (failover).

Azure Web Apps

Las Web Apps de Microsoft Azure, son la principal solución del Cloud de Microsoft para la publicación de Aplicaciones Web en formato PaaS (Platform as a Service) en un entorno compartido, fácilmente escalable, tanto en Horizontal como en Vertical. Sus funciones de Auto-Scale nos permitirán definir un número mínimo y máximo de Instancias, así como un conjunto de reglas con condiciones para aumentar y disminuir el número de Instancias de forma automática y garantizar un nivel de servicio apropiado con un uso mínimo y racional de recursos, que en un segundo nivel podríamos exponenciar con Azure Traffic Manager. ¿Y si aún así se me queda pequeño y/o necesito un mayor control de la seguridad? Entonces el App Service Environment (ASE) es para tí. Ta to pensao.

Azure CLI 2.0

Azure CLI 2.0 (conocida también como X-Plat CLI en su primera versión Azure CLI 1.0) es una interfaz de comandos Open Source y multi-plataforma (Windows, Linux y MacOS) para gestionar los recursos de Microsoft Azure. De este modo, podemos realizar acciones sobre Microsoft Azure (crear, modificar, consultar, o eliminar objetos de Microsoft Azure), de una forma fácil y rápida, directamente desde la Línea de Comandos de Linux/MacOS (Bash) o desde el Comand Prompt de Windows (incluso desde el bash de Windows 10), sin tener que utilizar PowerShell. Además, también lo tenemos disponible directamente desde el Portal de Azure, a través del Azure Cloud Shell, y por lo tanto disponible en cualquier momento y desde cualquier lugar.

Cache-Aside Pattern

El Cacheo (Caching) ayuda a mejorar el rendimiento y escalabilidad de las Aplicaciones, creando una copia temporal de los datos que son accedidos más frecuentemente, sobre un almacenamiento rápido y cercano a la Aplicación. El patron Cache-Aside propone una solución al problema de refresco de la Caché, utilizando una Caché inteligente de Lectura y Escritura (Read/Write-Through Caching), de tal modo que las Aplicaciones puedan acceder directamente a la Caché, si el dato solicitado no estuviese en caché lo recuperaría de su almacenamiento original de forma transparente, y además, se permitiría modificar el contenido de la Caché, lo cual realizaría la correspondiente actualización sobre el almacenamiento original para su persistencia.

Competing Consumers Pattern

Una técnica común en el Desarrollo de Aplicaciones (por ejemplo para la realización de trabajos pesados) es la utilización de una Cola de Mensajes Asíncrona, de tal modo, que ciertos trabajos puedan ser solicitados asíncronamente a través de dicha Cola, asegurando así que el Front-End o la Lógica de Negocio, no se quedan bloqueados hasta la finalización de tal trabajo, favoreciendo una mejor experiencia de usuario. Una aproximación correcta, pero en la que un único Consumidor (Receiver) podría actuar como un cuello de botella. Por ello, el patrón Competing Consumers define múltiples Consumidores coordinados entre sí, especialmente útil en entornos con cantidades muy variables de peticiones por su escalabilidad.

Circuit Breaker pattern

Un Patrón de Diseño que podemos aplicar para gestionar el acceso a recursos que puedan estar fuera de servicio temporalmente (por picos de carga, red, etc.) es el Circuit Breaker, que simula el funcionamiento de un interruptor eléctrico (switch) inteligente, que permite anticiparse a ciertos errores (al contrario que el patrón Retry, que actúa siempre a posteriori) para intentar gestionarlos de una forma más efectiva. Para ello, necesitamos implementar un Proxy, con una lógica basada en una Máquina de Estados, capaz de prever si un recurso no va a estar disponible, para directamente ni siquiera intentar su acceso, con el objetivo de facilitar la recuperación rápida de dicho recurso al evitar reintentos que podrían sobrecargarlo incluso más.

Retry Pattern

Internet es un entorno susceptible a fallos transitorios (ej: indisponibilidad temporal y timeouts por picos de carga de trabajo y por las comunicaciones de red), motivo por el cual, debemos garantizar que nuestras aplicaciones son capaces de anticiparse a esta situación, y manejar de una forma elegante y transparente para los usuarios, los intentos de conexión a los servicios y recursos de red que necesite (y encuentre temporalmente indisponible), mejorando así la estabilidad de nuestra Aplicación y la experiencia de usuario. En muchos casos son fallos que se corrigen solos automáticamente, y nuestra Aplicación sólo tiene que reintentar una o dos veces, para conseguir acceder con éxito, dependiendo del tipo de error.

Miembros de
Miembros de GITCA (Global IT Community Association)

Menu de Usuario
  Iniciar Sesión
  Registrarse
  Restablecer Contraseña
  Ventajas de Registrarse

Acerca de
  Contigo desde Oct 2007
  771 usuarios registrados
  86146 pageloads/mes
  Ranking Alexa 498160

Social Networks
Sigue a Portal GuilleSQL en Linkedin !!
Sigue a Portal GuilleSQL en Twitter !!



Archivo

Marzo de 2019 (1)
Octubre de 2018 (1)
Julio de 2018 (1)
Junio de 2018 (4)
Mayo de 2018 (5)
Abril de 2018 (3)
Marzo de 2018 (2)
Febrero de 2018 (7)
Enero de 2018 (1)
Diciembre de 2017 (15)
Noviembre de 2017 (7)
Junio de 2017 (3)
Mayo de 2017 (1)
Marzo de 2017 (3)
Enero de 2017 (4)
Junio de 2016 (1)
Mayo de 2016 (2)
Abril de 2016 (2)
Septiembre de 2015 (2)
Agosto de 2015 (2)
Junio de 2015 (10)
Mayo de 2015 (4)
Abril de 2015 (8)
Marzo de 2015 (11)
Octubre de 2014 (3)
Septiembre de 2014 (7)
Agosto de 2014 (5)
Julio de 2014 (2)
Mayo de 2014 (4)
Abril de 2014 (4)
Marzo de 2014 (4)
Febrero de 2014 (1)
Enero de 2014 (5)
Diciembre de 2013 (8)
Noviembre de 2013 (2)
Octubre de 2013 (7)
Septiembre de 2013 (6)
Agosto de 2013 (1)
Julio de 2013 (6)
Junio de 2013 (11)
Mayo de 2013 (7)
Abril de 2013 (6)
Febrero de 2013 (5)
Enero de 2013 (7)
Diciembre de 2012 (12)
Noviembre de 2012 (13)
Octubre de 2012 (5)
Septiembre de 2012 (3)
Agosto de 2012 (6)
Julio de 2012 (4)
Junio de 2012 (1)
Mayo de 2012 (2)
Abril de 2012 (7)
Marzo de 2012 (16)
Febrero de 2012 (9)
Enero de 2012 (5)
Diciembre de 2011 (10)
Noviembre de 2011 (10)
Octubre de 2011 (4)
Septiembre de 2011 (5)
Agosto de 2011 (2)
Julio de 2011 (2)
Junio de 2011 (4)
Mayo de 2011 (2)
Abril de 2011 (6)
Marzo de 2011 (4)
Febrero de 2011 (10)
Enero de 2011 (5)
Diciembre de 2010 (6)
Noviembre de 2010 (4)
Octubre de 2010 (8)
Septiembre de 2010 (4)
Agosto de 2010 (1)
Julio de 2010 (3)
Mayo de 2010 (5)
Abril de 2010 (6)
Marzo de 2010 (8)
Febrero de 2010 (3)
Enero de 2010 (1)
Diciembre de 2009 (9)
Noviembre de 2009 (14)
Octubre de 2009 (2)
Septiembre de 2009 (8)
Agosto de 2009 (2)
Julio de 2009 (10)
Junio de 2009 (9)
Mayo de 2009 (10)
Abril de 2009 (9)
Marzo de 2009 (3)
Febrero de 2009 (2)
Enero de 2009 (3)
Noviembre de 2008 (2)
Octubre de 2008 (2)
Septiembre de 2008 (2)
Agosto de 2008 (5)
Julio de 2008 (5)
Junio de 2008 (1)
Mayo de 2008 (3)
Abril de 2008 (2)
Marzo de 2008 (2)
Febrero de 2008 (2)
Enero de 2008 (5)
Noviembre de 2007 (2)
Octubre de 2007 (2)






Copyright © 2007 GuilleSQL, todos los derechos reservados.