Pruebas de tensión con un servidor API externo en Java Spring: ¿respuesta simulada?

Tengo una configuración de arquitectura de microservicio y estoy buscando hacer una prueba de esfuerzo. Tengo una configuración bastante compleja con algunas solicitudes http sincrónicas y un sistema de cola de mensajes (RabbitMQ).

Como estoy haciendo uso del servidor API de otra compañía, no quiero correr el riesgo de estresar su servidor. Esta solicitud es una llamada síncrona que solicita al proveedor de API y devuelve una respuesta bastante considerable. En cambio, quiero tener algún trozo / simulación que devolverá una respuesta similar y con una latencia similar. Digamos, por ejemplo, una respuesta de este servidor es 5s y devuelve 2kb de datos, luego quiero introducir un retraso de 5s y devolver más o menos algunos datos de tamaño comparativo (en otras palabras, quiero un poco de personalización) en ese formato que tengo preparado.

Para llegar a este punto, requiero (a) capturar una respuesta considerable y editarla. Particularmente, quiero editarlo para filtrar algunos datos confidenciales y también para aumentar su tamaño y hacerlo más grande para que pueda enfatizar el aspecto del ancho de banda del sistema. (b) Debo mantenerme lo más cerca posible de la solución nativa para obtener una buena comprensión de los tiempos de respuesta de este extremo y también quiero una sobrecarga mínima posible cuando se realizan pruebas de esfuerzo. He estado buscando algunas soluciones como WireMock que, si lo entiendo bien, configuró un servidor falso para probarlo. Esto no funcionará para mí, ya que necesito usar mis propios servidores (que están basados ​​en TomCat) para mantenerme lo más cerca posible de mi arquitectura.

Respuesta 1

Puede ejecutar WireMock dentro de un contenedor de servlet (incluido Tomcat). Pierde el acceso a algunas propiedades de configuración, pero eso puede no importar en el caso que ha descrito.

Ver aquí para más detalles: http://wiremock.org/docs/getting-started/#Deploying-into-a-servlet-container

Alternativamente, podría usar MockLab , que es un servicio totalmente alojado basado en WireMock.

Respuesta: 2

Estoy usando Yajsw para ejecutar mi aplicación como proceso Daemon. para la llamada de estado, me gustaría ver "En ejecución" o "detenido" pero recibí los mensajes que se muestran a continuación SW043305-SRV01: /etc/init.d # ./testDaemon status 15.06 ...

Estoy tratando de fusionar 2 programas que hice en un archivo .jar. Un programa es un .jar escrito en java y el segundo es un .exe escrito en c ++. Puse ambos archivos en el nuevo .jar, escribí este código pero ...

Tengo lo siguiente: ejecutando eclipse-indigo en CentOS 6.2, también instalé apache-ant-1.8.4 en mi sistema y configuré la variable ANT_HOME en eclipse. En eclipse he instalado el enchufe maven2 -...

Puedo cargar archivos PDF que tienen 7 MB de datos, pero no puedo cargar más de 7 MB. ¿Alguien puede dar un ejemplo de cómo cargar un archivo de 200 MB usando el protocolo SMB mientras usa el código angular para ...