Capítulo 7 Google Protobuf

7.1 Introducción básica a la codificación y decodificación.

  1. Al escribir aplicaciones de red, dado que los datos transmitidos en la red son datos de código de bytes binarios, deben codificarse al enviar datos y deben decodificarse al recibir datos.

  2. Hay dos componentes de códec (códec) : decodificador (decodificador) y codificador (codificador). El codificador es responsable de convertir los datos comerciales en datos de bytecode, y el decodificador es responsable de convertir los datos de bytecode en datos comerciales
    Inserte la descripción de la imagen aquí

7.2 Mecanismo de codificación y decodificación propio de Netty y análisis de problemas

  1. Netty proporciona un códec (códec)

  2. Netty proporciona el codificador:
    StringEncoder, codifica datos de cadena
    ObjectEncoder, codifica objetos Java

  3. Netty proporciona el decodificador
    StringDecoder, que decodifica datos de cadena,
    ObjectDecoder y decodifica objetos Java

  4. sí Netty viene ObjectDecoder ObjectEncoder y la codificación y decodificación se puede utilizar para implementar objeto POJO varios negocios o objetos, todavía utilizando la técnica de serialización Java subyacente, la secuencia de la tecnología Java sí misma eficiencia no es alto, los siguientes problemas:
    1 No se puede cruzar el idioma
    2. El volumen después de la serialización es demasiado grande, más de 5 veces el de la codificación binaria.
    3. El rendimiento de la serialización es demasiado bajo
    ===> conduce a una nueva solución [Protobuf de Google]

7.3 Protobuf

Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

7.4 Ejemplo de inicio rápido de Protobuf

Escriba un programa y use Protobuf para completar las siguientes funciones

  1. El cliente puede enviar un objeto de estudiante PoJo al servidor (codificado por Protobuf)
  2. El servidor puede recibir el objeto Student PoJo y mostrar la información (decodificada por Protobuf)
    Inserte la descripción de la imagen aquí

7.5 Ejemplo 2 de inicio rápido de Protobuf

  1. Escriba un programa y use Protobuf para completar las siguientes funciones
  2. El cliente puede enviar aleatoriamente objetos de estudiante PoJo / trabajador PoJo al servidor (codificado por Protobuf)
  3. El servidor puede recibir objetos de estudiante PoJo / trabajador PoJo (necesita determinar qué tipo) y mostrar información (decodificada por Protobuf)
    Inserte la descripción de la imagen aquí
138 artículos originales publicados · Me gusta 3 · Visitante 7227

Supongo que te gusta

Origin blog.csdn.net/weixin_43719015/article/details/105300193
Recomendado
Clasificación