Prueba de esfuerzo de la puerta de enlace SpringBoot+Netty JT808
Hemos visto algunos artículos en Internet sobre puertas de enlace estándar de nivel ministerial. No proporcionan configuración del servidor, velocidad de transmisión ni informes de prueba. Es completamente un truco. ., todo habla con datos.
Utilice la herramienta de prueba de estrés del terminal simulada La herramienta de prueba de estrés enviará cinco tipos de mensajes: registro del terminal, cierre de sesión del terminal, autenticación del terminal, latido e informe de ubicación. La puerta de enlace jt808 recibe y analiza información de ubicación y la envía a RabbitMQ. gnss-web se suscribe a los mensajes de ubicación de RabbitMQ y cuenta la cantidad de ubicaciones recibidas. Compare si el número total de ubicaciones enviadas por la herramienta de prueba de estrés y el número de ubicaciones recibidas por la red son consistentes.
Dado que los requisitos de las pruebas de estrés del Ministerio de Transporte no son altos, no realizamos pruebas de estrés de acuerdo con los requisitos del Ministerio de Transporte. Durante la prueba, aumentamos la tasa de envío en más de 2. veces para ver cómo el sistema puede soportar el estrés.
Servidor: Tencent Cloud y Alibaba Cloud Linux
Configuración: CPU: 4 núcleos Memoria: 8G Ancho de banda: 5M
Entorno: JDK13, RabbitMQ, Redis, entre otros que RabbitMQ y Redis se crean utilizando contenedores Docker
Programa de prueba: gateway jt808-server, servidor web backend, web backend gnss-web
Serialización de mensajes: ProtoBuf
Simule la cantidad de puntos finales que se probarán: 3333, 10000, 12000
Proceso: inicie Redis y RabbitMQ en el contenedor acoplable, luego inicie gnss-web, cargue 20000 puntos finales en el caché de Redis y luego inicie jt808-servidor.
Rendimiento de RabbitMQ:
Información de carga del servidor:
Ubicaciones web recibidas: 2523083
Hilo de puerta de enlace JT808 comprobado, no encontrado hilo de bloqueo BLOCK .
Resumen: tiempo de prueba de esfuerzo: 40 minutos, número de ubicaciones: 1: 40 minutos, número de ubicaciones: 10 millones, rendimiento de RabbitMQ: 5000/s, uso de CPU: 75-80%, ancho de banda: 3,5 M:
La CPU ha disminuido mucho en comparación con antes:
El hilo de la puerta de enlace JT808 es bueno y no se ha encontrado ningún hilo de bloqueo BLOCK para ejecutar