eclipse-iceoryx / iceoryx2

Eclipse iceoryx2™ - true zero-copy inter-process-communication in pure Rust
https://iceoryx.io
Apache License 2.0
1.03k stars 40 forks source link

Add more comparison benchmarks #417

Open tusharmath opened 1 month ago

tusharmath commented 1 month ago

Hi there!

Your benchmarks look promising, but I would like to see how it compares to Thrift, gRPC and WASM.

These are some of the most popular alternatives for building RPC. I'd love to explore this for Tailcall as we are building a plugin API.

elfenpiff commented 1 month ago

I think I can deliver a gRPC benchmark quickly, I have no experience with Thrift so if someone would like to support here I would be super happy.

@tusharmath I do not completely get what you mean with WASM. I know WebAssembly but unsure what you would like to compare here?

tusharmath commented 1 month ago

@elfenpiff Communication from Native (Rust) to a WASM module. While building a WASM based application you often need to communicate with the real world for example making and HTTP call or a DB query. Data needs to be sent from the native realm where the drivers are actually implemented to the application code which is typically in WASM. If the performance of iceoryx can beat this overhead of communicating with a WASM module, I think it will make it worthy candidate for building distributed applications.

elBoberido commented 3 weeks ago

@tusharmath it would be desirable to make iceoryx2 work in a WASM module but I think we would need to break out of the sandbox to make this work. I don't have experience with WASM, just reading about it now and then, but I think it will be quite challenging to solve that problem.