Estoy escribiendo un servicio de transmisión simple JSON. Consiste en mensajes JSON, enviados intermitentemente, durante un largo período de tiempo (semanas o meses).Elección de transportes para JSON sobre TCP
¿Cuál es la mejor práctica con respecto al envío de múltiples mensajes JSON a través de un socket TCP simple?
Algunas alternativas que he mirado (y sus desventajas) son:
- nueva línea separada JSON - desventaja: los saltos de línea dentro de JSON requieren escapar, o prohibición
- WebSocket inspirado encuadre 0x00 0xFF - desventaja: es ahora binario, no UTF-8 más
- websockets reales - inconveniente: la falta de (opensource) WebSocket cliente bibliotecas
- http multiparte http://www.w3.org/Protocols/rfc1341/7_2_Multipart.html - inconveniente: el cliente incompletos ¿apoyo?
- sin delimitadores - desventaja: CHUNKING requiere análisis JSON (no se puede contar sólo curlies debido a curlies en cuerdas)
¿Hay una manera buena, o al menos bien establecida de hacer esto?
¿qué ocurre al abrir/cerrar el zócalo entre cada mensaje? – fvu
@fvu en horas punta, podemos tener diez o más mensajes por segundo, por lo que esto no es eficiente. También podría causar agotamiento de NAT en enrutadores débiles. – fadedbee
¿Por qué no se pueden contar los curlies? uno podría detectar y evitar el conteo de los cráneos en cuerdas, ¿no podría? – moala