viernes, 1 de junio de 2012

Computación distribuida interorganizacional


La computación distribuida ha sido principalmente implementada a nivel organizacional. Una organización tiene varios servidores y distribuye la carga entre ellos.

Actualmente están disponibles modelos más recientes de computación distribuida que permiten computación distribuida interorganizacional en lugar de intraorganizacional.

• Arquitecturas peer-to-peer

• Arquitecturas de sistemas orientados a servicios

• Servicios Web

• SOA


Peer-to-Peer

Los sistemas peer-to-peer (P2P) son sistemas descentralizados en los que los cálculos pueden llevarse a cabo en cualquier nodo de la red y, al menos en principio no se hacen distinciones entre clientes y servidores.

En las aplicaciones peer-to-peer, el sistema en su totalidad se diseña para aprovechar la ventaja de la potencia computacional y disponibilidad de almacenamiento a través de una red de computadoras enormes.

Los estándares y protocolos que posibilitan las comunicaciones a través de los nodos están embebidos en la propia aplicación, y cada nodo debe ejecutar una copia de dicha aplicación.




Arquitecturas de sistemas orientado a servicios

 El desarrollo de la WWW trajo consigo que las computadoras cliente tuviesen acceso a los servidores remotos situados fuera de sus propias organizaciones.

Es claro que si las organizaciones convierten su información a HTML, entonces ésta podrá ser accedida por estas computadoras. Sin embargo el acceso solo a través de un navegador web no es práctico.


 

Servicio web

Un servicio Web (Web service) es una colección de protocolos y estándares que sirven para intercambiar datos entre aplicaciones.

Mediante la noción de un servicio web, las organizaciones que requieren hacer accesible la información a otros programas, pueden hacerlo definiendo y publicando un interfaz de servicio web. Esta interfaz define los datos disponibles y como se puede acceder a ellos i.e. un servicio web es una representación estándar para cualquier recurso computacional o de información que pueda ser usado por otros programas.
 
La principal razón para usar servicios Web es que se basan en HTTP sobre TCP en el puerto 80.

Buena interfaz para acceder a servicios y funcionalidades de otros ordenadores en la red.

Gran independencia y flexibilidad entre aplicación y servicio.


 Arquitectura Orientada a Servicios (SOA)

Es un concepto de arquitectura de software que define la utilización de servicios para dar soporte a los requisitos del negocio.

Permite la creación de sistemas de información altamente escalables que reflejan el negocio de la organización, a su vez brinda una forma bien definida de exposición e invocación de servicios (comúnmente pero no exclusivamente servicios web), lo cual facilita la interacción entre diferentes sistemas propios o de terceros.

SOA define las siguientes capas de software:
  • Aplicaciones básicas - Sistemas desarrollados bajo cualquier arquitectura o tecnología, geográficamente dispersos y bajo cualquier figura de propiedad;
  • De exposición de funcionalidades - Donde las funcionalidades de la capa aplicativa son expuestas en forma de servicios (generalmente como servicios web);
  • De integración de servicios - Facilitan el intercambio de datos entre elementos de la capa aplicativa orientada a procesos empresariales internos o en colaboración;
  • De composición de procesos - Que define el proceso en términos del negocio y sus necesidades, y que varía en función del negocio;
  • De entrega - donde los servicios son desplegados a los usuarios finales.
SOA proporciona una metodología y un marco de trabajo para documentar las capacidades de negocio y puede dar soporte a las actividades de integración y consolidación.