Protocolos y serialización binaria

parser RESP de RedisExamina los bytes reales

Pega texto RESP escapado o bytes Hex y revisa tramas completas sin conectarte a Redis.

parser RESP de Redis

Entrada RESP

Resultado

Escribe RESP o carga un ejemplo.

Procesamiento local; sin conexión Redis ni carga de datos.

Opciones

Escribe RESP o carga un ejemplo.

Si un cliente Redis muestra una respuesta pero la captura contiene $5 o *3, el valor final puede ocultar un error de longitud. El parser RESP de Redis permite seguir cada prefijo y rango de bytes antes de atribuir el problema al cliente.

Por qué usar este parser RESP de Redis

La estructura conserva sus límites originales mientras inspeccionas el flujo.

Comprobar cada fragmento de flujo

El parser RESP de Redis valida el tamaño declarado y el terminador de cada fragmento RESP3 antes de unirlos. El árbol conserva el número de fragmentos y rechaza una secuencia incompleta.

Varios fragmentos de bytes se unen en un valor con tipo y conservan sus límites

JSON sin pérdida de tipos

Los bulk binarios permanecen en Hex, los mapas guardan pares clave-valor ordenados y los atributos acompañan al valor siguiente. Un objeto JSON corriente no podría conservar todo eso.

Valor binario, clave numérica de mapa y atributo en campos JSON separados

Encontrar el primer byte que falla

01

Elegir la representación de entrada

El modo inicial convierte los caracteres \r y \n en bytes CRLF. Usa Hex para contenido binario; un LF solo no se corrige automáticamente.

  • La longitud corresponde a bytes UTF-8, no al número de caracteres visibles.
02

Restringir la versión cuando se conozca

Auto acepta tipos comunes a RESP2 y RESP3 y detecta prefijos exclusivos de RESP3. Elegir RESP2 rechaza estos últimos, sin adivinar la versión negociada.

  • La lectura automática espera 350 ms; en manual funciona Ctrl/Cmd + Intro.
03

Revisar antes de exportar

El árbol indica rangos de bytes y longitudes declaradas. Un array superior de cadenas obtiene un resumen de comando, sin validar su ejecución en Redis.

  • Cambiar entrada u opciones bloquea copiar y descargar hasta volver a analizar.

Detalles del protocolo a la vista

Árbol de tipos RESP2 y RESP3

Para decodificar RESP, el árbol distingue bulk nulo de bulk vacío, array de mapa y una respuesta de error del servidor de un fallo al analizar.

Validación estricta de longitudes

El número declarado se compara con los bytes UTF-8 reales y el CRLF final. El primer desajuste muestra desplazamiento y línea de entrada.

Tramas de pipeline y comandos

Varias tramas se mantienen en orden. Un array con forma de comando muestra nombre y argumentos sin afirmar que Redis lo aceptaría.

Mapeo a JSON tipado

Analizar protocolo Redis aquí conserva Hex para datos binarios, texto decimal para enteros grandes, pares ordenados y atributos RESP3.

Límites de una captura RESP

Sin conexión al servidor
Solo se analiza el contenido pegado. No se envían comandos SET o GET ni se simula el estado de las claves.
No se deduce la negociación
RESP2 y RESP3 comparten varias formas de codificación. Auto informa la versión mínima necesaria, no el resultado real de HELLO.
Mapas y binarios sin conversión destructiva
Una clave de mapa puede no ser texto o repetirse; por eso se exportan pares. Un bulk que no sea UTF-8 sigue en Hex.
Datos completos y acotados
El parser RESP de Redis exige CRLF y longitudes exactas. Acepta hasta 1 MiB, 1000 tramas, 10000 nodos y 64 niveles; un flujo truncado es un error.

Preguntas sobre el parser RESP de Redis

¿Cómo se lee el protocolo RESP de Redis?

El primer byte identifica el tipo; las longitudes y CRLF marcan los límites. Pega la trama y compara en el árbol los rangos y valores anidados.

¿Qué significa el formato RESP de una cadena bulk?

Después de $ aparece la longitud en bytes, CRLF, esa cantidad exacta de datos y otro CRLF. Un carácter UTF-8 puede ocupar varios bytes.

¿Cómo se distingue RESP2 de RESP3?

Mapa, booleano, atributo y push requieren RESP3. Si solo aparecen tipos compartidos, los bytes no revelan la versión negociada de la conexión.

¿Puedo convertir una orden Redis en bytes RESP aquí?

No. La página decodifica tramas ya existentes. Si el array superior tiene forma de orden, muestra el nombre y sus argumentos sin construir ni ejecutar nuevas órdenes.

¿Se puede analizar más de una respuesta seguida?

Sí, cuando todas las tramas están completas. Se muestran en orden; la primera trama truncada da error y desactiva la exportación del resultado completo.

¿Queda alguna duda?

Revisa tu captura con el parser RESP de Redis

Localiza el primer byte incoherente antes de cambiar tu cliente. El parser RESP de Redis solo exporta JSON tipado después de leer toda la entrada con éxito.

Todo se procesa dentro de tu navegador.