Estoy configurando un servicio web REST que solo necesito responder SÍ o NO, lo más rápido posible.
Diseñar un servicio HEAD parece la mejor manera de hacerlo, pero me gustaría saber si realmente ganaré algo de tiempo en lugar de hacer una solicitud GET.
Supongo que obtengo que el flujo del cuerpo no esté abierto / cerrado en mi servidor (¿aproximadamente 1 milisegundo?). Dado que la cantidad de bytes a devolver es muy baja, ¿gano algo de tiempo en transporte, en número de paquete IP?
¡Gracias por adelantado por tu respuesta!
Editar:
Para explicar más el contexto:
- Tengo un conjunto de servicios REST que ejecutan algunos procesos, si están en un estado activo.
- Tengo otro servicio REST indicando el estado de todos estos primeros servicios.
Dado que ese último servicio será llamado muy a menudo por un gran número de clientes (se espera una llamada cada 5 ms), me preguntaba si el uso de un método HEAD puede ser una optimización valiosa. Se devuelven unos 250 caracteres en el cuerpo de respuesta. El método HEAD al menos gana el transporte de estos 250 caracteres, pero ¿cuál es ese impacto?
Intenté comparar la diferencia entre los dos métodos (HEAD vs GET), ejecutando 1000 veces las llamadas, pero no veo ninguna ganancia (<1ms) ...
Content-Length
valor del encabezado, que es una información importante en una respuesta a una solicitud HEAD. A menos que exista algún otro enfoque del lado del servidor más optimizado, el único beneficio es que se ahorra ancho de banda y el cliente no tiene que analizar el cuerpo de la respuesta. Entonces, básicamente, las ganancias de optimización dependen de las implementaciones del servidor y del cliente.