It's TCP vs. RPC All over Again
systemsapproach.substack.com
It's TCP vs. RPC All over Again
1–10 of 116 posts
Re: It's TCP vs. RPC All over Again
#2Re: It's TCP vs. RPC All over Again
#3What are the best recommendations for modern day low latency RPC? Google protocol buffers? Or some message queue such as ZeroMQ?
Instead of opening a TCP (or UDP) socket and writing data (or data grams) to it you’d open a (for want of a better term) RPCP socket and write data that represents the procedure call and parameters to it.
I assume the protocol would have assurances of some kind of reliability (unlike UDP) and procedure call data boundaries (unlike TCP) built in at the lowest levels along with request/response sequences to allow out of order completions.
Re: It's TCP vs. RPC All over Again
#4It always felt weird developing RPC layers on top of TCP cause requests and responses end up tied to the underlying socket -- which doesn't need to be the case ever.
Re: It's TCP vs. RPC All over Again
#5Re: It's TCP vs. RPC All over Again
#6Re: It's TCP vs. RPC All over Again
#7What are the best recommendations for modern day low latency RPC? Google protocol buffers? Or some message queue such as ZeroMQ?
It leverages DPDK and is perfect for low-latency RPC in lossless DCs
Re: It's TCP vs. RPC All over Again
#8What are the best recommendations for modern day low latency RPC? Google protocol buffers? Or some message queue such as ZeroMQ?
Check out eRPC.io It leverages DPDK and is perfect for low-latency RPC in lossless DCs
Re: It's TCP vs. RPC All over Again
#9Good to learn a bit of history about TCP. It always felt weird developing RPC layers on top of TCP cause requests and responses end up tied to the underlying socket -- which doesn't need to be the case ever.
Re: It's TCP vs. RPC All over Again
#10What are the best recommendations for modern day low latency RPC? Google protocol buffers? Or some message queue such as ZeroMQ?
What you run over that for your RPC is a matter of taste - gRPC is certainly popular, and can be run over QUIC.