BAQUIA

Criterios de selección de servidores de aplicaciones

Los servidores de aplicaciones actúan como intermediarios entre las peticiones de los usuarios de una página web y los servidores de bases de datos y de transacciones, sitúandose en la segunda capa de una arquitectura de red trinivel. De esta forma se consigue aumentar las funcionalidades ofrecidas en un sitio de Internet sin necesidad de actualizar los programas cliente utilizados por los usuarios. Como consecuencia, la elección del servidor de aplicaciones a utilizar en una empresa adquiere una gran importancia por las siguientes razones:

  • Condiciona las tecnologías que se pueden utilizar en el futuro.
  • Cumple algunas funciones vitales para el buen funcionamiento del sitio.
  • La elevada inversión económica que precisa.

Para elegir el servidor de aplicaciones a utilizar se deben tener en cuenta múltiples factores, que podemos clasificar en las siguientes categorías:

  • Seguridad
  • Escalabilidad y fiabilidad
  • Soporte de las transacciones
  • Presentación de páginas web

Seguridad

Los servidores de aplicaciones necesitan contar con buenos mecanismos de seguridad ya que suelen estar en contacto con la información confidencial de los usuarios o de la empresa. En el caso de los comercios electrónicos y los servicios financieros por Internet la importancia de mantener la confidencialidad de los datos es aún mayor, a fin de preservar todos los datos financieros de sus clientes.

Los factores que se deben tener en cuenta en relación a la seguridad son los siguientes:

  • Identificación del usuario: consiste en determinar la identidad del usuario y las acciones que puede realizar. Existen diversos mecanismos para realizar esta función, como la consulta de una base de datos en la que se almacenan los nombres de usuario y contraseña o el LDAP (Lightweight Directory Access Protocol o Protocolo Ligero de Acceso a Directorios).
  • Soporte para la definición de grupos: en este caso, se pueden definir grupos con un conjunto de privilegios o acciones asociadas, de forma que cuando un usuario es asignado a un grupo los recibe todos automáticamente. La diferencia entre los distintos servidores de aplicaciones está en el nivel al que se realizan las comprobaciones, y por tanto la flexibilidad que permiten tener a la hora de definir los grupos.

Escalabilidad y fiabilidad

El gran crecimiento del número de usuarios de Internet y la necesidad de asegurar la disponibilidad de las aplicaciones a todas horas hace que sea necesario contar con un sistema que permita aumentar la capacidad y fiabilidad del funcionamiento del site. Esto se concreta en los siguientes factores:

  • Tolerancia a los fallos: se pueden agrupar ordenadores que cumplan la misma función, de forma que si ocurre un fallo en alguno de ellos los otros pueden sustituirle sin que el usuario perciba el problema.
  • Balanceo de carga: en este caso también hay varios ordenadores que contienen la misma información y cumplen las mismas funciones. Cuando se recibe una petición del usuario, el servidor de aplicaciones determina la máquina que deberá atenderle, de forma que ninguna esté sobrecargada.

ACID: propiedades de bases de datos que se deben proporcionar

Soporte de las transacciones

Una de las funciones principales de los servidores de aplicaciones es la de controlar la comunicación entre el usuario y los servidores de bases de datos. Como consecuencia, estas transacciones deben proporcionar las propiedades necesarias de las bases de datos: Atomicidad, Consistencia, Aislamiento y Durabilidad (Atomicity, Consistency, Isolation, and Durability o ACID).

Para conseguir este objetivo, un servidor de aplicaciones debe proporcionar:

  • Coordinación de transacciones distribuidas: el servidor de aplicaciones debe funcionar como un DTC (Distributed Transaction Coordinator o Coordinador de Transacciones Distribuidas). Esto conlleva que debe gestionar las transacciones comunicándose con la base de datos y manipulando el resultado que recibe para enviarlo al usuario.
  • Administración de DTC: se necesitan ciertas herramientas para gestionar el DTC, que pueden ser remotas, utilizar una línea de comandos o estar basadas en un entorno gráfico.
  • Soporte a transacciones iniciadas por el usuario: aunque la mayoría de las transacciones son resultado del código incluido en la página web, en algunas ocasiones el usuario tiene necesidad de ser el que las inicia. En estas situaciones el servidor de aplicaciones debería ofrecer la posibilidad de que las transacciones se realicen con uno o más servidores, dependiendo de la naturaleza de la misma.
  • Interoperatividad del control de las transacciones: en muchos casos las empresas utilizaban un sistema para que las aplicaciones accedan a la información de las bases de datos antes de incorporar el servidor de aplicaciones. En estas situaciones es necesario que el producto elegido sea compatible con la tecnología anterior, para no perder el desarrollo tecnológico anterior.
  • Compatibilidad con el servidor de bases de datos: existen distintos servidores de bases de datos y es necesario que el servidor de aplicaciones se pueda comunicar con la que utilice la empresa para acceder a la información.

Presentación de páginas web

En Internet la mayoría de los accesos se realizan por medio de un navegador que interpreta las páginas web enviadas por el servidor. Por lo tanto es necesario que el servidor de aplicaciones pueda comunicarse con el servidor de páginas web para recibir las peticiones y poder enviar el resultado a los usuarios.

Específicamente, los requisitos que debe cumplir el servidor de aplicaciones en cuanto a la presentación de la información en formato web son:

  • Interoperatividad con el servidor de páginas web: el servidor de páginas web es el encargado de controlar el tráfico de la página, mientras que el de aplicaciones gestiona el acceso a la información. Es necesaria la comunicación entre estos servidores para que la respuesta del sitio web sea lo más rápida y fiable posible.
  • Generación de HTML (Hypertext Markup Language o Lenguaje de Definición de Hipertexto): el HTML es el lenguaje que interpretan los navegadores utilizados por los usuarios para acceder a Internet. Toda la información resultante de los procesos realizados por el servidor de aplicaciones debe ser convertida a este formato para que llegue correctamente al internauta. Existen múltiples mecanismos para realizar esta función, entre los que encontramos los servlets de Java (aplicaciones que se ejecutan en el servidor y están escritas en el lenguaje Java) y las ASPs (Active Server Pages o Páginas Activas de Servidor).
  • Seguimiento del usuario: para realizar algunas acciones, es necesario realizar un seguimiento de la navegación del usuario y poder identificarle a lo largo del tiempo. Esto se suele realizar por medio de cookies, que son pequeños programas que el servidor envía al navegador para identificar al internauta que se conecta con ese ordenador a lo largo del tiempo.
  • Soporte de XML (eXtensible Markup Language o Lenguaje de Definición Extensible): el XML se utiliza para dar formato a los datos, sobre todo en el B2B. Los servidores de aplicaciones pueden proporcionar la habilidad de interpretar estos documentos y gestionarlos para que cumplan las funciones de comunicación y realización de operaciones.

Las fuentes consultadas para la elaboración de este informe aparecen mencionadas como \”Otras fuentes\”.

Temas relacionados:
  • D.H. Brown Associates
  • Network World Fusion

  • Compartir en :


    Noticias relacionadas

    Recomendamos




    Comentarios