How to Build the Fastest RPC
The Scylla Summit includes many technical sessions that aren’t about Scylla at all. Alex Gallego, a principal engineer in Akamai’s Platform Group, gave one such talk, SMF: The Fastest RPC in the West.
First, a bit of background on Alex. He was the founder and CTO behind the Concord.io distributed stream processing engine. Much in the same way that Scylla addressed the Java-based performance issues in Cassandra, Concord.io chose to build in C++ to deliver a stream processor with better predictability, performance, isolation, multi-tenancy, supervision, and failure recovery.
As Alex explains it, “During my time at Concord.io, we saw that users wanted to do exactly-once stream processing. But as we were assessing all the open source queues, we found that none of them could keep up with the traffic we were pushing on them. All the databases we tested crashed, all the queues crashed and those that didn’t manage to crash were either too expensive to run or their tail latencies were too high.”
In his session, Alex introduces SMF (pronounced /smɝf/), a new Remote Procedure Call (RPC) framework designed for microsecond tail latency. Alex takes the audience through SMF as though they were users of the system. After walking through the internals of SMF, he shares benchmarks that show he achieved his goal of double-digit tail latency–a big improvement on other RPC systems.
By the way, SMF is built on Seastar, the same foundational technology we used for Scylla. We’re glad for the opportunity to share other Seastar-based projects!
Interested? Watch the video above or have a look at the slides below.