You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jul 16, 2020. It is now read-only.
FWIW, there are quite a few options for battle tested messaging/RPC mechanisms. protobuf and gRPC seems to be quality options packed with features including message versioning and optional fields to be able to evolve messages over time keeping backward compatibility.
gRPC uses HTTP2, which could be an opportunity to reduce the number of certificates needed as well (along with all the niceties from HTTP2 and probably a better behaviour with corporation proxies in case clients/servers need to talk across those boundaries).
@dlespiau thanks for the input.
We use Go's gob encoding for the current SSNTP implementation. I'd qualify gob encoding as a Go optimized protobuf even though I assume the Go protobuf bindings may use gob encoding.
We actually do not want to use HTTP (1.1 or 2) for Ciao inter components IPC because we want a fully asynchronous protocol. SSNTP is a very simple application protocol built on top of TLS, so it'll be as good with corporate proxies as any other TLS based protocol (like e.g. HTTPS).
We do not check the SSNTP version for doing backward compatibility.
We need to e.g. keep track of supported commands for a given version.
The text was updated successfully, but these errors were encountered: