RPC y servicio web

Anonim

RPC vs servicio web

La creación de servicios web utilizando el protocolo SOAP requiere que se emplee una de las dos alternativas. Uno puede seguir el protocolo Document SOAP o el protocolo de mensajería RPC SOAP. RPC se refiere a la llamada a procedimiento remoto y es un protocolo que puede ser utilizado por un programa dado para solicitar un servicio dado en otro programa que se encuentra dentro de otra computadora remota. Al utilizar RPC, no es necesario conocer los detalles de la red del programa. Una llamada de procedimiento dada se conoce como una llamada de rutina secundaria o incluso una llamada de función.

Al emplear el uso de RPC, hay un gran uso del modelo cliente / servidor. El programa que solicita que se realice un servicio está en el lado del cliente y se dice que la computadora que proporciona la ejecución de un programa dado está en el extremo del servidor. La acción de RPC se puede denominar síncrona, ya que requiere que un programa que solicita acción suspenda la acción especificada hasta que se den los resultados de un procedimiento remoto.

Para garantizar que el dispositivo no demore demasiado cuando haya diferentes acciones pendientes, RPC permite el procesamiento de varios subprocesos que comparten una dirección determinada, y por lo tanto, las respuestas pueden darse tal como vienen, y no en serie, donde una acción debe Se completará para que el próximo comience.

Por lo tanto, un servicio web que se crea mediante el control SOAP puede seguir el estilo de mensajería RPC o Documento. Por lo tanto, el estilo del documento puede indicar el documento.xml específico que puede validarse con el esquema XML dado. Como Java RPC se utiliza en la comunicación de plataformas como EJB, se ejecutan aplicaciones similares en Java. El servicio web, por otro lado, se utiliza principalmente cuando se utiliza una aplicación que no se ejecuta en Java y busca conectarse con el servicio web.

El rendimiento entre RPC y los servicios web es bastante distinto, con una gran variación entre los servicios web y RPC siendo bastante variable. En algunos casos, la variación puede ser bastante pequeña, con la consideración de la capacidad de recuperación en juego. RPC tiene el desafío de tener un entorno de servidor congestionado, lo que dificulta el trabajo con varios clientes.

Por otro lado, el servicio web permite la implementación múltiple del servicio, con la única necesidad de que el servicio web se invoque a través de HTTP. Esto permite la explotación de las técnicas normales de pulverización y enrutamiento de la red empleadas en sitios más grandes. También es importante tener en cuenta que el servicio web no necesita ningún código especial para funcionar con el servidor o incluso con el cliente.

La resistencia tanto de RPC como del servicio web puede compararse por igual, aunque es importante tener en cuenta que RPC requiere que los intermediarios de uso funcionen como se espera. Es aquí donde EE EJB y los marcos como Spring entran en juego. Para el mejor servicio, es recomendable trabajar con Java EE EJB antes de iniciar el entorno RPC. La exposición al servicio web en este entorno y RPC también facilita la configuración.

Resumen

RPC se refiere a la llamada a procedimiento remoto. Se recomienda el uso de RPC cuando hay un uso intensivo del modelo cliente / servidor. RPC permite el procesamiento de varios subprocesos que comparten una dirección determinada. RPC empleado en una plataforma que utiliza EJB. Servicio web utilizado en plataformas no Java cuando una aplicación quiere acceso. El servicio web también se utiliza para la sincronización de la comunicación asíncrona.