Soft question: library to make distributed Rust as easy as async?


Main question:

Distributed systems certainly have different requirements from async in that: if a channel fails in async, there's likely a hardware error, and crashing is acceptable. On the other hand, dist sys are expected to do work even when tcp / udp connections drop.

Having said that, it seems like alot of the work that goes into async are also very useful for dist sys:

  • marking structs are Send
  • handling failure on send/recv
  • making code async

It seems like if we had primitives for:

  • other_machine::spawn instead of async_std::spawn AND
  • way to forbid accessing global memory

then a lot of async code may be able to actually run on a different machine.


What I am curious about here are:

  1. what are complexities I am not taking into account

  2. besides lunatic / bastion, if there are other efforts in this direction

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.