Saltar al contenido
Aback Tools Logo

Estimador de tamaño de Protocol Buffer

Estima el tamaño en bytes de Protobuf frente a JSON para cualquier carga útil online y gratis. Nuestro estimador de tamaño de Protocol Buffer infiere el tipo proto3 óptimo de cada campo y muestra el ahorro en bytes por campo, con comparación de JSON+GZIP y Protobuf+GZIP. Todo el procesamiento ocurre en tu navegador. No requiere registro.

Protocol Buffer Size Estimator

Paste any JSON payload to estimate its Protobuf wire size. The estimator infers the optimal proto3 type for each field and shows per-field byte savings vs JSON - all processing happens locally in your browser.

Load sample:

¿Por qué usar nuestro estimador de tamaño de Protocol Buffer?

  • Estimación instantánea del tamaño de Protobuf: Estima el tamaño en bytes de Protobuf frente a JSON al instante en tu navegador, sin subir nada a un servidor ni usar procesamiento en la nube. Nuestro estimador infiere el tipo proto3 óptimo de cada campo y calcula los bytes exactos de codificación.
  • Estimador de tamaño de Protocol Buffer online y seguro: Tus cargas útiles JSON nunca salen de tu dispositivo al estimar el tamaño de Protobuf. El procesamiento 100 % en el cliente garantiza privacidad total: sin almacenamiento en la nube, sin registros del servidor y sin exposición de las cargas útiles de la API.
  • Estimador de tamaño de Protocol Buffer - Sin instalación: Estima el tamaño en bytes de Protobuf directamente en tu navegador, sin descargar software, sin plugins y sin cuenta. Funciona en cualquier navegador moderno de cualquier sistema operativo.
  • Desglose por campo con comparación GZIP: Consulta los bytes de JSON frente a los bytes de Protobuf con el porcentaje de ahorro de cada campo, incluidos los mensajes anidados. El panel resumen muestra las barras de tamaño de JSON, Protobuf, JSON+GZIP y Protobuf+GZIP una al lado de la otra.

Casos de uso habituales del estimador de tamaño de Protocol Buffer

  • Planificación de migración de REST a gRPC: Estima el ahorro de tamaño antes de migrar una API REST/JSON a gRPC/Protobuf. Pega las cargas útiles JSON actuales de tus respuestas para ver exactamente cuánto ancho de banda ahorraría cada endpoint tras la migración.
  • Optimización del ancho de banda de API móviles: Estima el ahorro de Protobuf en cargas útiles de API móviles donde el ancho de banda es costoso. Una reducción del 40-60 % en el tamaño de las respuestas reduce directamente el consumo de datos y mejora los tiempos de carga en conexiones 3G/4G.
  • Dimensionamiento de cargas útiles en IoT y dispositivos edge: Estima el tamaño de Protobuf para cargas útiles de sensores IoT y telemetría de dispositivos edge. Protobuf es la codificación estándar de los protocolos IoT: el estimador muestra exactamente cuánto más pequeñas serán tus cargas útiles.
  • Optimización de streaming en tiempo real y WebSocket: Estima el ahorro de Protobuf para mensajes WebSocket de alta frecuencia y Server-Sent Events. Mensajes más pequeños significan menor latencia y mayor rendimiento en aplicaciones en tiempo real.
  • Planificación de cargas útiles en bases de datos y cachés: Estima el tamaño de Protobuf para datos almacenados en Redis, Memcached u otras cachés binarias. Los valores codificados en Protobuf suelen ser un 40-60 % más pequeños que JSON, lo que reduce directamente el uso de memoria de la caché.
  • Diseño de esquemas proto y selección de tipos de campo: Usa el desglose por campo para elegir el tipo proto3 más eficiente para cada campo. El estimador muestra el coste en bytes de cada elección de tipo, ayudándote a diseñar esquemas que minimicen el tamaño binario.

¿Qué es la estimación del tamaño de Protocol Buffer?

Protocol Buffers (Protobuf) es el formato de serialización binaria de Google, una alternativa compacta a JSON para cargas útiles de API, telemetría IoT y comunicación entre servicios. Protobuf codifica los datos con un formato binario en el que cada campo se identifica por una etiqueta numérica y se representa en la forma binaria más compacta para su tipo. Nuestro estimador de tamaño de Protocol Buffer analiza una carga útil JSON, infiere el tipo proto3 óptimo de cada campo (bool, uint32, int64, double, string, message, repeated) y calcula el número exacto de bytes de la codificación: te muestra cuánto más pequeña sería tu carga útil en Protobuf frente a JSON.

Cómo funciona nuestro estimador de tamaño de Protocol Buffer

  1. 1. Pega tu carga útil JSON: Introduce cualquier objeto JSON en el área de entrada. Usa las cargas útiles de ejemplo integradas (perfil de usuario, evento de analítica) para ver el estimador en acción. Todo el procesamiento ocurre localmente en tu navegador: tus datos nunca salen de tu dispositivo.
  2. 2. Pulsa «Estimar tamaño de Protobuf»: El estimador analiza el JSON, infiere el tipo proto3 óptimo de cada campo y calcula los bytes exactos de codificación según la especificación de Protobuf, incluida la codificación varint para enteros, la codificación con prefijo de longitud para cadenas y mensajes, y la sobrecarga de etiqueta de cada campo.
  3. 3. Revisa el desglose por campo: La tabla de resultados muestra los bytes de JSON, los bytes estimados de Protobuf y el porcentaje de ahorro de cada campo, incluidos los mensajes anidados. El panel resumen muestra las barras de tamaño de JSON, Protobuf, JSON+GZIP y Protobuf+GZIP una al lado de la otra.

Cómo funciona la codificación binaria de Protobuf

  • Varint (enteros, booleanos): Codificación de longitud variable: los enteros pequeños usan menos bytes. El número 1 ocupa 1 byte; 128 ocupa 2 bytes; 16384 ocupa 3 bytes. Por eso Protobuf es drásticamente más pequeño que JSON en cargas útiles con muchos enteros.
  • Con prefijo de longitud (cadenas, mensajes): Un prefijo de longitud en varint seguido de los bytes en bruto. Una cadena de 10 caracteres usa 1 byte (longitud) + 10 bytes (contenido) = 11 bytes, frente a 12 bytes en JSON (incluidas las comillas).
  • Ancho fijo (float, double): Siempre 4 u 8 bytes, sea cual sea el valor. Usa float en lugar de double cuando la precisión de 32 bits sea suficiente para ahorrar 4 bytes por campo.
  • Valores null/por defecto omitidos: Proto3 omite por completo del formato binario los campos con valores por defecto (0, false, cadena vacía, null), ahorrando todo el tamaño del campo en cargas útiles dispersas.

Limitaciones importantes

El estimador de tamaño de Protocol Buffer ofrece estimaciones basadas en los tipos proto3 inferidos: el tamaño real de la codificación Protobuf depende de la definición concreta de tu esquema .proto. El estimador asume una selección óptima de tipos (por ejemplo, uint32 para enteros positivos). Si tu esquema usa int32 para números negativos o fixed32 en lugar de varint, los tamaños reales serán distintos. Las estimaciones de GZIP son aproximaciones: la compresión real depende de la entropía de los datos y de los patrones de repetición.

Preguntas frecuentes

Un estimador de tamaño de Protocol Buffer analiza una carga útil JSON y calcula qué tamaño tendría la codificación binaria equivalente de Protobuf. Nuestro estimador online gratuito funciona íntegramente en tu navegador: tus cargas útiles JSON nunca se suben a ningún servidor.

Las estimaciones son muy precisas para los tipos proto3 inferidos. El estimador usa la especificación exacta de codificación binaria de Protobuf: codificación varint para enteros, codificación con prefijo de longitud para cadenas y mensajes, y sobrecarga de etiqueta por campo.

Protobuf elimina la sobrecarga estructural de JSON: sin cadenas de nombres de campo, sin comillas, sin dos puntos, sin comas, sin corchetes. Los nombres de campo se sustituyen por etiquetas numéricas de 1-2 bytes. Los enteros usan codificación varint (1-5 bytes) en lugar de dígitos ASCII.

Por supuesto. Nuestro estimador procesa todo localmente en tu navegador. Tus cargas útiles JSON nunca se suben a ningún servidor, nunca se almacenan y nunca salen de tu dispositivo.

Sí: 100 % gratis, para siempre. Sin registro, sin cuenta, sin planes premium, sin límites de tamaño de archivo y sin anuncios que interrumpan tu flujo de trabajo.

El estimador infiere: bool para booleanos JSON, uint32/uint64 para enteros positivos, int32 para enteros negativos, double para números en coma flotante, string para cadenas JSON, message para objetos anidados, repeated para arrays y omite los valores null.

Sí. Los objetos JSON anidados se estiman como mensajes incrustados de proto3: el estimador calcula recursivamente el tamaño binario de todos los campos anidados y añade la sobrecarga de la etiqueta del mensaje y el prefijo de longitud. Los arrays se estiman como campos repetidos.

JSON+GZIP suele lograr un 60-70 % de compresión, mientras que Protobuf+GZIP logra un 50-60 %. En la mayoría de las cargas útiles, Protobuf+GZIP es un 20-40 % más pequeño que JSON+GZIP. El panel resumen muestra los cuatro tamaños uno al lado del otro.

Sí. Pega las respuestas JSON actuales de tu API REST para estimar el ahorro de tamaño tras migrar a gRPC/Protobuf. El desglose por campo muestra qué campos se benefician más de la codificación Protobuf.