fbpx
Wikipedia

Servicio web

Un servicio web (en inglés, web service o web services) es una tecnología que utiliza un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre cualquier plataforma, pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como Internet. La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la arquitectura y reglamentación de los servicios Web.

El W3C define un servicio web como:

Un servicio web es un sistema software diseñado para soportar la interacción máquina-a-máquina, a través de una red, de forma interoperable. Cuenta con una interfaz descrita en un formato procesable por un equipo informático (específicamente en WSDL), a través de la que es posible interactuar con el mismo mediante el intercambio de mensajes SOAP, típicamente transmitidos usando serialización XML sobre HTTP conjuntamente con otros estándares web.
W3C[1]

Para mejorar la interoperabilidad entre distintas implementaciones de servicios web se ha creado el organismo WS-I, encargado de desarrollar diversos perfiles para definir de manera más exhaustiva estos estándares. Es una máquina que atiende las peticiones de los clientes web y les envía los recursos solicitados.

Arquitectura

 
Arquitectura de los Servicios Web SOAP

En la arquitectura de servicios web existen tres partes: proveedor de servicios web, el que pide el servicio web y el publicador. El proveedor de servicios envía al publicador del servicio un fichero WSDL con la definición del servicio web. El que pide el servicio contacta con el publicador y descubre quién es el proveedor (protocolo WSDL) y contacta con el proveedor (protocolo SOAP). El proveedor valida la petición de servicio y envía el dato estructurado en formato XML utilizando el protocolo SOAP. El fichero XML es validado de nuevo por el que pide el servicio utilizando un fichero XSD.

Estándares empleados

  • Web Services Protocol Stack: conjunto de servicios y protocolos de los servicios web.
  • XML (Extensible Markup Language): formato estándar para los datos que se vayan a intercambiar.
  • SOAP (Simple Object Access Protocol) o XML-RPC (XML Remote Procedure Call): protocolos sobre los que se establece el intercambio.
  • Otros protocolos: los datos en XML también pueden enviarse de una aplicación a otra mediante protocolos normales como Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), o Simple Mail Transfer Protocol (SMTP).
  • WSDL (Web Services Description Language): 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.
  • WS-Security (Web Service Security): protocolo de seguridad aceptado como estándar por OASIS (Organization for the Advancement of Structured Information Standards). Garantiza la autenticación de los actores y la confidencialidad de los mensajes enviados.
  • REST (Representational State Transfer): arquitectura que, haciendo uso del protocolo HTTP, proporciona una API que utiliza cada uno de sus métodos (GET, POST, PUT, DELETE, etcétera) para poder realizar diferentes operaciones entre la aplicación que ofrece el servicio web y el cliente.
  • GraphQL, arquitectura alternativa a REST.

Ventajas de los servicios web

  • Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen.
  • Los servicios Web fomentan los estándares y protocolos basados en texto, que hacen más fácil acceder a su contenido y entender su funcionamiento.
  • Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente para proveer servicios integrados.

Inconvenientes de los servicios web

  • 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 Java Remote Method Invocation (RMI), CORBA o Distributed Component Object Model (DCOM). Es uno de los inconvenientes derivados de adoptar un formato basado en texto. Y es que entre los objetivos de XML no se encuentra la concisión ni la eficacia de procesamiento.
  • 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.

Razones para crear servicios Web

La principal razón para usar servicios Web es que se pueden utilizar con HTTP sobre Transmission Control Protocol (TCP) en el puerto de red 80. Dado que las organizaciones protegen sus redes mediante firewalls (que filtran y bloquean gran parte del tráfico de Internet), cierran casi todos los puertos TCP salvo el 80, que es, precisamente, el que usan los navegadores web. Los servicios Web utilizan este puerto, por la simple razón de que no resultan bloqueados. Es importante señalar que los servicios web se pueden utilizar sobre cualquier protocolo, sin embargo, TCP es el más común.

Otra razón es que, antes de que existiera SOAP, no había buenas interfaces para acceder a las funcionalidades de otras computadoras en red. Las que había eran ad hoc y poco conocidas, tales como Electronic Data Interchange (EDI), Remote Procedure Call (RPC), u otras API.

Una tercera razón por la que los servicios Web son muy prácticos es que pueden aportar gran independencia entre la aplicación que usa el servicio Web y el propio servicio. De esta forma, los cambios a lo largo del tiempo en uno no deben afectar al otro. Esta flexibilidad será cada vez más importante, dado que la tendencia a construir grandes aplicaciones a partir de componentes distribuidos más pequeños es cada día más utilizada.

Se espera que para los próximos años mejoren la calidad y cantidad de servicios ofrecidos basados en los nuevos estándares.

Plataformas

Servidores de aplicaciones para servicios Web:

Véase también

Referencias

  1. «Web Services Glossary § Web service». W3C. 11 de febrero de 2004. Consultado el 24 de junio de 2018. 

Enlaces externos

  • ESA y Web Services en SAP
  • Estado del Arte: Servicios WEB
  • Guía Breve de Servicios Web (W3C)
  • Guía Breve de Seguridad de la comunicación por internet (SSL)
  •   Datos: Q193424
  •   Multimedia: Web services

servicio, servicio, inglés, service, services, tecnología, utiliza, conjunto, protocolos, estándares, sirven, para, intercambiar, datos, entre, aplicaciones, distintas, aplicaciones, software, desarrolladas, lenguajes, programación, diferentes, ejecutadas, sob. Un servicio web en ingles web service o web services es una tecnologia que utiliza un conjunto de protocolos y estandares que sirven para intercambiar datos entre aplicaciones Distintas aplicaciones de software desarrolladas en lenguajes de programacion diferentes y ejecutadas sobre cualquier plataforma pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como Internet La interoperabilidad se consigue mediante la adopcion de estandares abiertos Las organizaciones OASIS y W3C son los comites responsables de la arquitectura y reglamentacion de los servicios Web El W3C define un servicio web como Un servicio web es un sistema software disenado para soportar la interaccion maquina a maquina a traves de una red de forma interoperable Cuenta con una interfaz descrita en un formato procesable por un equipo informatico especificamente en WSDL a traves de la que es posible interactuar con el mismo mediante el intercambio de mensajes SOAP tipicamente transmitidos usando serializacion XML sobre HTTP conjuntamente con otros estandares web W3C 1 Para mejorar la interoperabilidad entre distintas implementaciones de servicios web se ha creado el organismo WS I encargado de desarrollar diversos perfiles para definir de manera mas exhaustiva estos estandares Es una maquina que atiende las peticiones de los clientes web y les envia los recursos solicitados Indice 1 Arquitectura 2 Estandares empleados 3 Ventajas de los servicios web 4 Inconvenientes de los servicios web 5 Razones para crear servicios Web 6 Plataformas 7 Vease tambien 8 Referencias 9 Enlaces externosArquitectura Editar Arquitectura de los Servicios Web SOAP En la arquitectura de servicios web existen tres partes proveedor de servicios web el que pide el servicio web y el publicador El proveedor de servicios envia al publicador del servicio un fichero WSDL con la definicion del servicio web El que pide el servicio contacta con el publicador y descubre quien es el proveedor protocolo WSDL y contacta con el proveedor protocolo SOAP El proveedor valida la peticion de servicio y envia el dato estructurado en formato XML utilizando el protocolo SOAP El fichero XML es validado de nuevo por el que pide el servicio utilizando un fichero XSD Estandares empleados EditarWeb Services Protocol Stack conjunto de servicios y protocolos de los servicios web XML Extensible Markup Language formato estandar para los datos que se vayan a intercambiar SOAP Simple Object Access Protocol o XML RPC XML Remote Procedure Call protocolos sobre los que se establece el intercambio Otros protocolos los datos en XML tambien pueden enviarse de una aplicacion a otra mediante protocolos normales como Hypertext Transfer Protocol HTTP File Transfer Protocol FTP o Simple Mail Transfer Protocol SMTP WSDL Web Services Description Language es el lenguaje de la interfaz publica para los servicios web Es una descripcion basada en XML de los requisitos funcionales necesarios para establecer una comunicacion con los servicios web UDDI Universal Description Discovery and Integration protocolo para publicar la informacion de los servicios web Permite comprobar que servicios web estan disponibles WS Security Web Service Security protocolo de seguridad aceptado como estandar por OASIS Organization for the Advancement of Structured Information Standards Garantiza la autenticacion de los actores y la confidencialidad de los mensajes enviados REST Representational State Transfer arquitectura que haciendo uso del protocolo HTTP proporciona una API que utiliza cada uno de sus metodos GET POST PUT DELETE etcetera para poder realizar diferentes operaciones entre la aplicacion que ofrece el servicio web y el cliente GraphQL arquitectura alternativa a REST Ventajas de los servicios web EditarAportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen Los servicios Web fomentan los estandares y protocolos basados en texto que hacen mas facil acceder a su contenido y entender su funcionamiento Permiten que servicios y software de diferentes companias ubicadas en diferentes lugares geograficos puedan ser combinados facilmente para proveer servicios integrados Inconvenientes de los servicios web EditarPara realizar transacciones no pueden compararse en su grado de desarrollo con los estandares abiertos de computacion distribuida como CORBA Common Object Request Broker Architecture Su rendimiento es bajo si se compara con otros modelos de computacion distribuida tales como Java Remote Method Invocation RMI CORBA o Distributed Component Object Model DCOM Es uno de los inconvenientes derivados de adoptar un formato basado en texto Y es que entre los objetivos de XML no se encuentra la concision ni la eficacia de procesamiento Al apoyarse en HTTP pueden esquivar medidas de seguridad basadas en firewall cuyas reglas tratan de bloquear o auditar la comunicacion entre programas a ambos lados de la barrera Razones para crear servicios Web EditarLa principal razon para usar servicios Web es que se pueden utilizar con HTTP sobre Transmission Control Protocol TCP en el puerto de red 80 Dado que las organizaciones protegen sus redes mediante firewalls que filtran y bloquean gran parte del trafico de Internet cierran casi todos los puertos TCP salvo el 80 que es precisamente el que usan los navegadores web Los servicios Web utilizan este puerto por la simple razon de que no resultan bloqueados Es importante senalar que los servicios web se pueden utilizar sobre cualquier protocolo sin embargo TCP es el mas comun Otra razon es que antes de que existiera SOAP no habia buenas interfaces para acceder a las funcionalidades de otras computadoras en red Las que habia eran ad hoc y poco conocidas tales como Electronic Data Interchange EDI Remote Procedure Call RPC u otras API Una tercera razon por la que los servicios Web son muy practicos es que pueden aportar gran independencia entre la aplicacion que usa el servicio Web y el propio servicio De esta forma los cambios a lo largo del tiempo en uno no deben afectar al otro Esta flexibilidad sera cada vez mas importante dado que la tendencia a construir grandes aplicaciones a partir de componentes distribuidos mas pequenos es cada dia mas utilizada Se espera que para los proximos anos mejoren la calidad y cantidad de servicios ofrecidos basados en los nuevos estandares Plataformas EditarServidores de aplicaciones para servicios Web JBoss servidor de aplicaciones J2EE Open Source de Red Hat inc Oracle Fusion Middleware IBM Lotus Domino a partir de la version 7 0 Axis y el servidor Jakarta Tomcat de Apache ColdFusion MX de Macromedia Java Web Services Development Pack JWSDP de Sun Microsystems basado en Jakarta Tomcat JOnAS parte de ObjectWeb una iniciativa de codigo abierto Microsoft NET Novell exteNd basado en la plataforma J2EE WebLogic WebSphere JAX WS con GlassFish Zope es un servidor de aplicaciones Web orientado a objetos desarrollado en el lenguaje de programacion Python VERASTREAM de AttachmateWRQ para modernizar o integrar aplicaciones host IBM y VTVease tambien EditarInterfaz de programacion de aplicaciones API Oficina de servicios World Wide Web Web semantica SOAP SOA Web APIReferencias Editar Web Services Glossary Web service W3C 11 de febrero de 2004 Consultado el 24 de junio de 2018 Enlaces externos EditarESA y Web Services en SAP Estado del Arte Servicios WEB Seguridad en Servicios WEB Guia Breve de Servicios Web W3C Guia Breve de Seguridad de la comunicacion por internet SSL Datos Q193424 Multimedia Web servicesObtenido de https es wikipedia org w index php title Servicio web amp oldid 137300505, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos