Transfer data using tarpc
- Dominant language
- Rust
- Stars
- 3.7k
- Forks
- 230
- PR merge metrics
- No merged PRs in 30d
Description
tarpc provides a nice interface to program so I want to use tarpc to transfer data among different machines in a distributed cluster. Apart from the 'normal' use case of rpc which given as the following
```rust
type GetFut = Ready>;
fn get(self, _: context::Context) -> Self:: GetFut {
// something here
}
```
I would like to also have the following method:
```rust
type PutFut = Ready<()>;
fn put(self, _: context::Context, data: Vec) -> Self:: PutFut {
// something here
}
```
In this way, I suppose I can both get and send data to the server. The vector in my use case can be very large. My question are:
1) Will the upload and download stream cause congestion in the same channel because the data size can be very large in both direction
2) How would this `put` method compare to, say, using a handwritten TcpStream or something like MPI?
I used tarpc before but I don't really understand how it work under the hood. Can anyone kindly help me? Thanks so much!
Contributor guide
Assessment
This issue has not been assessed yet.