Compartir vía


Implementaciones típicas

Los requisitos de la topología de implementación del servidor Microsoft AppFabric 1.1 para Windows Server dependen en gran medida de las necesidades empresariales y de los requisitos de las aplicaciones que vaya a hospedar. Puesto que resulta difícil considerar una única implementación como típica y proporcionar instrucciones para esta, en esta sección se proporcionan instrucciones y recomendaciones para implementar AppFabric en su entorno.

Se tratan los siguientes temas de implementación:

  • Implementación de servidores individuales de AppFabric

  • Implementación de granjas de servidores de AppFabric

  • Consideraciones de seguridad en la implementación de características de almacenamiento en caché de AppFabric

  • Escenarios de implementación de características de almacenamiento en caché de AppFabric

Implementación de servidores individuales de AppFabric

Una implementación de servidor individual se realiza cuando se instala AppFabric en un único equipo. Esta implementación se usa frecuentemente en entornos de desarrollo donde el desarrollo de todas las aplicaciones se realiza en un único equipo.

SQL Server

Puesto que la escalabilidad no es un problema para un entorno de desarrollo, esta implementación de AppFabric se puede configurar para usar una instalación local de SQL Server Express para la base de datos de seguimiento y persistencia.

Implementación de aplicaciones

Aunque la implementación de aplicaciones puede realizarse mediante la creación de paquetes de aplicaciones y la implementación en AppFabric mediante MSDeploy, es más probable que los desarrolladores opten por configurar su proyecto para que use directamente el servidor local que ejecuta IIS, como medio de hospedaje de aplicaciones, ya que implica la cantidad mínima de pasos para hospedar una aplicación en un entorno de prueba. Sin embargo, se recomienda que los desarrolladores prueben la creación de paquetes y la implementación de aplicaciones antes de la migración al entorno de almacenamiento provisional o de producción, para garantizar que la aplicación empaquetada se implementa correctamente.

Para obtener más información sobre la implementación de aplicaciones, vea Implementación de aplicaciones.

Implementación de granjas de servidores de AppFabric

Mientras que un equipo con AppFabric y SQL Server instalado es suficiente para un entorno de desarrollo, un entorno de producción consta frecuentemente de múltiples equipos en una granja de servidores y uno o más servidores SQL Server dedicados. Un entorno de este tipo puede usar también equilibradores de carga y colas para administrar los mensajes de entrada dirigidos a su aplicación y la agrupación en clústeres de SQL Server para una mayor disponibilidad.

Una implementación a pequeña escala de AppFabric puede empezar con AppFabric instalado en un único equipo, pero puede crecer hasta una granja de servidores en que las aplicaciones se implementan en múltiples servidores para crear una aplicación con una gran distribución. La escalabilidad permite implementar soluciones de equilibrio de carga, de modo que el procesamiento de mensajes de entrada quede repartido entre múltiples servidores y se proporcione una mayor tolerancia a errores para los flujos de trabajo que usan la persistencia.

Agrupación en clústeres de SQL Server

Aunque no se describe detalladamente en esta sección, se recomienda firmemente agrupar las bases de datos en clústeres, para una mayor protección frente a errores. Para obtener información acerca del clúster de conmutación por error SQL Server, vea Planificación para la recuperación ante desastres (https://go.microsoft.com/fwlink/?LinkId=131016).

Escalabilidad de aplicación duradera

Cuando se trata con un proceso de larga ejecución, es importante que la aplicación pueda sobrevivir a los reinicios del sistema, a los problemas de hardware o a las interrupciones no previstas del servidor. AppFabric proporciona un proveedor de persistencia predeterminado del que pueden sacar provecho las aplicaciones de flujo de trabajo, para proporcionar persistencia para aplicaciones de larga ejecución.

En una implementación de un único servidor, la persistencia permite a una instancia de flujo de trabajo reanudar la ejecución cuando el servidor en el que se hospeda vuelva a un estado correcto; sin embargo, en una implementación en una granja de servidores, la aplicación puede reanudarse desde cualquier equipo apto de la granja de servidores. Además, si una instancia de flujo de trabajo se ejecuta en un servidor y un mensaje dirigido a esa instancia llega a otro servidor, la persistencia puede mover la instancia en ejecución al equipo que tiene el mensaje pendiente, para que el flujo de trabajo lo pueda procesar.

Para obtener más información, vea Configuración de la persistencia de flujo de trabajo.

Aislamiento de datos

AppFabric está configurado de forma predeterminada para almacenar la información de persistencia y de seguimiento en una base de datos. Esto es suficiente para un entorno de desarrollo, pero un entorno de producción normalmente requiere un mayor conjunto de recursos para el almacenaje de datos. AppFabric permite crear múltiples bases de datos independientes de persistencia y seguimiento para permitir el aislamiento de datos en varios equipos que ejecuten SQL Server.

Puesto que AppFabric admite la creación de múltiples bases de datos, se pueden separar los datos por función (persistencia y seguimiento) y también por aplicación. Si tiene una aplicación con requisitos de almacenamiento de datos sólido, puede crear bases de datos de persistencia y seguimiento que estén específicamente asociadas únicamente con esa aplicación o servicio.

Para obtener más información acerca de la creación de bases de datos adicionales, vea Administración de bases de datos.

Implementación de aplicaciones

Cuando se implementa una aplicación en múltiples equipos, es importante que la implementación pueda realizarse de forma coherente y repetible. Para conseguirlo, AppFabric usa MSDeploy para empaquetar e implementar aplicaciones web, sitios web o contenido y configuraciones de servidor web. MSDeploy también se puede usar para sincronizar datos entre el sitio web o servidor web y el equipo local o equipos remotos de la granja de servidores.

Para obtener más información sobre la implementación de aplicaciones, vea Implementación de aplicaciones. Para obtener más información acerca de MSDeploy, vea Herramienta de implementación web (https://go.microsoft.com/fwlink/?LinkId=151481) (en inglés).

Consideraciones acerca de la implementación de seguridad de Almacenamiento en caché de AppFabric

El sistema de caché distribuida de AppFabric está diseñado para funcionar en un centro de datos, dentro del perímetro de un firewall. Los servidores descritos en esta sección son el servidor que hospeda la ubicación de configuración de caché, los servidores de caché, los servidores de aplicación habilitados para caché, los servidores de desarrollo y el servidor de origen de datos principal. Todos los servidores deben estar ubicados en el mismo dominio.

Puesto que los datos en caché y las comunicaciones TCP/IP entre los servidores de caché no están cifrados, el sistema de caché distribuida es vulnerable frente a ataques malintencionados que registran o modifican el tráfico de red.

Nota

El cliente de caché de AppFabric está diseñado para residir en el nivel de la aplicación del ecosistema de aplicaciones. Los usuarios finales dentro o fuera del dominio de la organización no deben tener acceso directo de red a los servidores de caché.

Al retirar un servidor de caché, es posible que el programa de instalación de AppFabric no quite todas las excepciones de puerto del firewall. Una vez desinstalado AppFabric, se recomienda que vuelva a aplicar la configuración de firewall estándar.

Escenarios de implementación de características de Almacenamiento en caché de AppFabric

Para simplificar el tratamiento de las opciones de implementación, esta sección se centra en tres ejemplos distintos:

  • Implementación de desarrollador. Implementación en un único equipo, que se usa para desarrollar aplicaciones que admiten el almacenamiento en caché.

  • Implementación de tamaño medio. Instalación de varios equipos que no usa SQL Server, con hosts principales que realizan la función de administración de clústeres.

  • Implementación empresarial. Instalación de múltiples equipos que usa SQL Server para almacenar los valores de configuración de clústeres y para realizar la función de administración de clústeres.

En la tabla siguiente se resume dónde se instalan las características de Almacenamiento en caché de AppFabric y cómo se realiza la función de administración de clústeres.

Característica de las Almacenamiento en caché de AppFabric Implementación de desarrollador Implementación de tamaño medio Implementación empresarial

Ubicación de almacenamiento de la configuración del clúster de caché

Carpeta compartida localmente en una estación de trabajo de desarrollador

Carpeta de red compartida en un servidor de archivos

Base de datos de SQL Server

Instalación de servidor de caché (servicio Windows de hospedaje en caché y herramienta de administración Windows PowerShell)

Estación de trabajo del desarrollador

Uno o más servidores de caché (limitado por las conexiones simultáneas máximas de la carpeta)

Uno o más servidores de caché

Ensamblados de cliente de caché

Estación de trabajo del desarrollador

Uno o más servidores de aplicación

Uno o más servidores de aplicación

Los valores de configuración del clúster de caché se pueden almacenar en una carpeta de red compartida o en una base de datos de SQL Server. Para obtener más información sobre estas opciones, vea Opciones de almacenamiento de la configuración de clúster.

La función de administración de clústeres se puede realizar en hosts principales o SQL Server. Desde el punto de vista de la disponibilidad de clúster de caché, usar SQL Server es la mejor opción. Para obtener más información, vea Administración de clústeres y hosts principales (Almacenamiento en caché de AppFabric 1.1).

Implementación de desarrollador

Con la implementación de desarrollador, todos los componentes requeridos para crear una aplicación que admita el almacenamiento en caché, incluido el clúster de caché, se encuentran en la estación de trabajo del desarrollador. Esta implementación es la mejor opción al iniciarse con las características de Almacenamiento en caché de AppFabric.

Implementación de tamaño medio

Con la implementación de tamaño medio, la aplicación puede aprovechar las ventajas de un clúster de caché distribuido. Se puede escalar la aplicación fácilmente para cubrir las necesidades de crecimiento del nivel de la aplicación.

Puesto que este escenario de implementación no usa SQL Server para almacenar los valores de configuración del clúster, hay algunos inconvenientes. Algunos sistemas operativos están limitados en cuanto al número de conexiones simultáneas de carpetas compartidas que pueden soportar, lo que tiene un impacto directo en el número máximo de hosts de caché que se pueden tener en el clúster de caché distribuido. Windows XP, Windows Server 2003 y la versión de 32 bit de Windows Vista no permiten más de 10 conexiones simultáneas para una carpeta de red compartida. Se recomienda que no use estos sistemas operativos para almacenar los valores de configuración de caché de clústeres de gran tamaño.

Si automatiza o intenta realizar instalaciones de servidor de caché paralelas, es probable que haya contención en los archivos de configuración del clúster. La estrategia de instalación de servidores de caché más confiable en este escenario es realizar las instalaciones de servidores de caché de una en una.

Puesto que este escenario no implementa SQL Server, la instalación no requiere que proporcione e instale SQL Server, y cree una base de datos de configuración de clúster para la aplicación. En términos de tiempo y costes, esta opción puede o no ahorrar costes, en función de lo que ya tenga disponible para su aplicación. Si usa la opción de almacenamiento de configuración del clúster en carpetas compartidas, todos los servidores de caché del clúster de caché deben tener conectividad de red continua con la carpeta de red compartida.

Sin SQL Server, sólo los hosts principales pueden realizar la función de administración de clústeres. Puesto que la mayoría de hosts principales deben estar siempre en ejecución para que el clúster de caché esté disponible, en este escenario, el clúster de caché es más vulnerable frente a errores de servidor. Este escenario también dificulta el mantenimiento del servidor, en relación con la disponibilidad de la aplicación. Para obtener más información, vea Administración de clústeres y hosts principales (Almacenamiento en caché de AppFabric 1.1).

Implementación empresarial

En comparación con los demás escenarios de implementación, la implementación empresarial ofrece la mejor experiencia en relación con la disponibilidad y la compatibilidad. Requiere una base de datos SQL, que puede no ser una opción para algunas aplicaciones.

Cuando SQL Server realiza la función de administración de clústeres, el clúster puede soportar la pérdida en el clúster de todos los servidores de caché menos uno, y seguir ejecutándose. Al igual que cuando se usa la opción de almacenamiento de la configuración de clúster en carpeta compartida, los servidores de caché deben tener conectividad de red continua con la base de datos de SQL Server.

Nota

Cada vez que se detiene un servidor de caché, independientemente de si estaba realizando funciones de administración de clústeres o no, se pierden los datos almacenados en la memoria de ese servidor. Para cachés con nombre con la función de alta disponibilidad habilitada, las copias de los datos perdidos se conservan en otros servidores del clúster y se copian rápidamente a un servidor secundario. Para obtener más información, vea Alta disponibilidad (Almacenamiento en caché de AppFabric 1.1).

Puesto que ninguno de los servidores de caché de este escenario realiza la función de administración de clústeres, el mantenimiento de servidores para aplicaciones de gran disponibilidad es mucho más simple. No se requieren secuencias complejas de reinicios de servidores. Para obtener más información, vea Administración de clústeres y hosts principales (Almacenamiento en caché de AppFabric 1.1).

El uso de SQL Server presenta ventajas en situaciones que requieren conexiones simultáneas. Esto permite que las instalaciones automatizadas paralelas de servidores de caché se realicen sin problemas con las limitaciones de tamaño de clúster de la implementación de tamaño medio. Para obtener más información, vea Instalación de Extensiones de servidor de aplicaciones de .NET 4 (https://go.microsoft.com/fwlink/?LinkId=169172) (en inglés).

Vea también

Conceptos

Introducción a la arquitectura
Opciones de almacenamiento de la configuración de clúster
Configuración de clúster basada en carpeta compartida
Configuración de clúster basada en SQL Server
Uso de Windows PowerShell para administrar características de almacenamiento en caché de AppFabric 1.1
Administración de clústeres y hosts principales (Almacenamiento en caché de AppFabric 1.1)

  2012-03-05