Protocol Buffers Java RPC Stack
-
08-07-2019 - |
Pregunta
De acuerdo con esta entrada de Wikipedia:
" Protocol Buffers es muy similar al protocolo Thrift de Facebook, excepto que no incluye una pila RPC concreta para usar para servicios definidos. Desde que Protocol Buffers fue de código abierto, han surgido una serie de pilas de RPC para llenar este vacío. & Quot;
Sin embargo, no hay ejemplos de pilas RPC citadas. ¿Alguien puede sugerir una implementación basada en Java de una pila RPC?
Solución
Si desea una pila RPC basada en Java, es RMI . Sin embargo, no funciona bien multiplataforma.
He estado usando ProtoBuf para hacer RPC. Puede simular una pila RPC envolviendo un mensaje de protobuf dentro de otro protobuf, que define los servicios o las llamadas. Encuentre mi respuesta a esta pregunta para más detalles,
Google Protocol Buffers y HTTP
Thrift parece una muy buena alternativa si quieres soportar más plataformas como PHP, Ruby, C # etc. Sin embargo, me parece muy complejo en comparación con ProtoBuf.
Otros consejos
Google ha abierto su marco RPC gRPC , que utiliza Protocol Buffers para definir el servicio y los mensajes. gRPC es multiplataforma con soporte para C, C ++, C #, Java, Go, Node.js, Python, Ruby, Objective-C y PHP.
gRPC se basa en el estándar HTTP / 2 que permite nuevas capacidades como transmisión bidireccional, control de flujo, compresión de encabezado y conexiones multiplexadas.