2010-10-18 16 views
6

Tengo un servicio web implementado y listo para usar. La aplicación del cliente va a utilizar este servicio de forma sincrónica y extremadamente frecuente. La cantidad de datos devueltos por el servicio web también es considerable.Patrón de diseño de cliente de servicio web (mejor práctica)

El cliente del servicio web es una aplicación web (portlet de Liferay). He generado la parte del cliente con el eje dentro de Eclipse.

En mis primeras pruebas, en cada solicitud estoy instanciando un nuevo ServiceProxy y llamando a sus métodos. No estoy seguro acerca de la solidez y confiabilidad de esta estructura (hacer un nuevo objeto proxy cada vez).

Lo cambié a clases estáticas con proxy singleton, pero no estoy seguro de lo que sucederá durante las llamadas simultáneas de clientes de aplicaciones web (problemas de concurrencia).

Quiero que el diseño desacople mi aplicación web del cliente del servicio web y tenga algo así como la memoria caché proxy del cliente (no la memoria caché de datos ya que mi aplicación es en tiempo real) o algo similar.

Creo que debería haber un patrón de diseño o una práctica recomendada para las partes del cliente del servicio web.

Respuesta

1

Parece que su servicio web utiliza el protocolo HTTP, por lo que no hay razón para tener algún caché proxy o algo así, la conexión se crea en cada llamada, por lo que puede llamar a su instancia de cliente WS una vez inicializada.

Pero de todos modos pagará 200ms por cada llamada (de mi consultorio), y es principalmente procesamiento de XML si la red es excelente.

+0

Zaletniy, gracias. ¡Finalmente llamó la atención de alguien después de un mes! Para reformular lo que dijo, ¿está bien tener un objeto proxy singleton que cada cliente use para acceder al servicio? –

+0

Sí, n.p. creo. Además, me gustaría sugerir que hagamos algunas pesadas pruebas multiproceso, porque me he enfrentado cuando el marco de procesamiento xml se declara como seguro para subprocesos, pero en realidad surgen problemas concurrentes. – zaletniy

Cuestiones relacionadas