Está en la página 1de 19

“WEB SERVICES”

¿Cómo puede crearse una Arquitectura


de servicio INDEPENDIENTE de la
plataforma y de lenguaje y de una
manera SIMPLE?
¿Qué es un Web Service?

Es una colección de protocolos y estándares que sirven


para intercambiar datos entre sistemas.
Puede considerarse como una "caja negra" a la cual se
proveen datos de entrada específicos, obteniendo como
respuesta el conjunto de datos de salida correspondiente.

Web Service es una comunicación por medio de mensajes SOAP entre


diferentes equipos a través de una red, de manera independiente del
lenguaje y de la plataforma.

Ejemplo:
IntelliSOA provee un Web Service que recibe como dato de entrada un número de
CUIT y retorna como datos de salida el nombre, la dirección y demás datos de interés
del contribuyente asociado a ese CUIT.
Estándares Principales de
Web Services

Los estándares principales y tecnologías para construir y habilitar


Web services son:
• HTTP
• XML
• SOAP
• WSDL
• UDDI
• HTML

El protocolo de Internet para enviar mensajes de


requerimiento o de respuesta
• XML
(Extensible Markup Language)

Es el estándar de facto para estructurar datos, contenido


y formatos para documentos electrónicos.
Es el lenguaje universal para intercambio de información
entre aplicaciones, sistemas y dispositivos sobre
Internet.

Es el formato estándar para los datos que se vayan a


intercambiar.
• SOAP
(Simple Object Access Protocol )
Es un protocolo de mensajería construido en XML que
se usa para codificar información de los requerimientos
de los Web Services y para responder los mensajes
antes de enviarlos por la red. Los mensajes SOAP son
independientes de los sistemas operativos y pueden ser
transportados por los protocolos que funcionan en la
Internet, como ser: SMTP, MIME y HTTP.
• WSDL
(Web Services Description Languag)

Es el lenguaje de la interfaz pública para los servicios


Web. Es una descripción basada en XML de los
requisitos funcionales necesarios para establecer una
comunicación con los servicios Web.
• UDDI
(Universal Description, Discovery and Integration. )

Protocolo para publicar la información de los servicios


Web. Permite comprobar qué servicios web están
disponibles.
Características

•Interoperabilidad: Los Servicios Web se pueden consumir por clientes de


otras plataformas.

•Acceso externo desde Internet: Los Servicios Web realizan una buena
gestión para los accesos que provienen de clientes de Internet.

•Tipos de datos de las Interfaces: Los tipo de datos definidos para los
Servicios Web se corresponde con los tipos de datos definidos por la mayoría
de lenguajes de programación.

• Uso de los estándares de Internet: Los servicios Web utilizan los


estándares de Internet y evitan, en la medida de lo posible, reinventar
soluciones a problemas que ya están resueltas.
Características

•Soporte de cualquier lenguaje: La implementación de un Servicio Web no


está ligada a un particular lenguaje de programación. Esta es una gran ventaja
frente a otras tecnologías como Java RMI, que está completamente ligada al
uso de lenguaje Java, haciendo realmente difícil hacer una llamada a un objeto
Java desde un objeto Visual Basic o Perl. De este modo, un cliente puede
implementar o usar un Servicio Web
independientemente del lenguaje de programación en el que fue implementado.
Java, C, C++, Perl, Python, C#, y/o Visual Basic

•Soporte para cualquier infraestructura de componentes distribuidas: Los


Servicios Web no están ligados a una arquitectura de componentes en
particular. Los protocolos facilitan a nivel base la comunicación entre las
distintas infraestructuras de objetos distribuidos. Por este motivo, únicamente es
necesario preocuparse del desarrollo y utilización de Servicios Web.
Esquema funcionamiento Web Services

Un Web Services, en vez de obtener peticiones desde un navegador y


devolver páginas web como respuesta, recibe peticiones, mediante un
mensaje formateado con SOAP, desde otras aplicaciones realiza la labor
que le han pedido y devuelve un mensaje de respuesta también con
formato SOAP.
¿Cómo funciona?
¿CÓMO FUNCIONA?
Para explicar como funciona tomaremos como ejemplo
una agencia de viajes, que para atender a sus clientes
requiere de información del clima, tipo de cambio,
precios de pasajes entre otros. Es claro que para
contar con esta información, la agencia implemente
sistemas especializados, distrayendo sus esfuerzos en
tareas no centrales de su negocio.
Lo ideal sería utilizar fácil y rápidamente la información
de otras empresas especializadas en estos temas. Y
como hemos mencionado esto es factible a través de la
implementación de componentes de software tanto en
el servidor de la agencia de viajes, como en los
servidores de las entidades especializadas, de tal
manera que puedan comunicarse a través de Internet o
de cualquier otro medio y bajo un lenguaje común,
puedan intercambiar información. Estos componentes
son los “Web Services”.
¿Para qué sirve un Web Services?
Para tener acceso a información y procesos remotos a través de
aplicaciones web.
La finalidad de un Web Services, es la de ofrecer, vender o alquilar un
proceso y que este pueda ser invocado por otras aplicaciones sin
considerar el lenguaje de programación utilizado.
Ventajas de los Servicios Web

■ INTEROPERABILIDAD

■ ACCESO EXTERNO DESDE INTERNET

■ TIPOS DE DATOS DE LAS INTERFACES

■ USO DE LOS ESTÁNDARES DE INTERNET

■ SOPORTE DE CUALQUIER LENGUAJE

■ SOPORTE PARA CUALQUIER INFRAESTRUCTURA DE COMPONENTES


DISTRIBUIDAS
Comparación frente a otros modelos de
computación distribuida

Web Service Otros modelos


■ CORBA es independiente pero no es ■ Para realizar transacciones no pueden
simple. compararse en su grado de desarrollo con
los estándares abiertos de computación
distribuida como CORBA (Common Object
Request Broker Architecture).

■ Su rendimiento es bajo si se compara con


■ DCOM es independiente del lenguaje pero
otros modelos de computación distribuida,
no es independiente de la plataforma ni
tales como RMI (Remote Method
simple.
Invocation), CORBA, o DCOM.

■ Al apoyarse en HTTP, pueden esquivar


■ RMI es simple e independiente de la medidas de seguridad basadas en firewall
plataforma pero no del lenguaje. cuyas reglas tratan de bloquear o auditar la
comunicación entre programas a ambos
lados de la barrera.
Beneficios

■ Independiente de la plataforma y del lenguaje


■ Basado en estándares abiertos
■ Publicado, localizado y accesible a través de
internet
■ Soporta mensajes síncronos y asíncronos
■ Soporta varios clientes
❑ Aplicaciones.
❑ Capa Web.
❑ Capa de negocios, para subsistemas sesacoplados.
❑ B2B para aplicaciones entre negocios.
Desarrollo de Web Services con software libre

✔Existen varias posibilidades de desarrollo de Web Services usando


software libre, siendo Java el lenguaje de programación que se utiliza.

✔El uso de los Web Services a través de la Web hace necesario que se
puedan utilizar en diferentes plataformas.

✔Java asegura que su código sea portable.

✔ las APIs que incorpora para XML, hacen del uso de XML embebido
en código Java mucho más fácil.

✔Las APIs en un paquete de desarrollo java para la programación de


Web Services

✔Existe la posibilidad de utilizarlo directamente programando en Java, o


bien, utilizar herramientas que hacen un uso más transparente de este
paquete como los Java Web Service Developer Pack.

También podría gustarte