Download Diapositiva 1 - PortalHuarpe

Document related concepts
no text concepts found
Transcript
Universidad Nacional de San Juan
Facultad de Ciencias Exactas, Físicas y
Naturales
“WEB SERVICES”
Integrantes:
Ene Adriana
Guevara Vanina
Martínez Cintia
¿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

CORBA es independiente pero no es
simple.

DCOM es independiente del lenguaje pero
no es independiente de la plataforma ni
simple.

RMI es simple e independiente de la
plataforma pero no del lenguaje.
Otros modelos

Para realizar transacciones no pueden
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
otros modelos de computación distribuida,
tales como RMI (Remote Method
Invocation), CORBA, o DCOM.

Al apoyarse en HTTP, pueden esquivar
medidas de seguridad basadas en firewall
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.
JDEVELOPER 10g de ORACLE
Herramienta de desarrollo de Ws
Web Service que une dos nombres