natefinch / pie

a toolkit for creating plugins for Go applications
MIT License
765 stars 59 forks source link

Extend pie to be able to work with gRPC #10

Open natefinch opened 8 years ago

natefinch commented 8 years ago

gRPC is really nice and really fast and has a ton of cross platform support (obviously way more than go-compatible RPC). Enabling gRPC would make a lot of interop problems with pie go away.

pires commented 8 years ago

This would be really awesome to have, particularly for stream-based RPC.

yanpozka commented 8 years ago

any progress on this ? I was close to create an issue with this topic ;)

natefinch commented 8 years ago

No progress, at the time, grpc was still a bit of a moving target. It's nicely released now, so I should look at this again.

tgulacsi commented 7 years ago

I've just implemented a gRPC transport for a plugin which I previously used pie (it had some error, which occasionally blocked the connection, which blocked everything). I'm using Abstract Unix Domain Socket (Linux-specific), as gRPC needs a Listener, a simple connection is not enough (AFAIK).

dchenk commented 6 years ago

@tgulacsi and @natefinch can you please help with an answer: Why would you choose communicating over stdin/stdout instead of with Unix domain sockets? Is either method more reliable?

tgulacsi commented 6 years ago

No, I think they're the same regarding reliability, just that stdin/stdout is already there, needs no extra setup (unix domain socket needs to create a file somewhere, or an abstract socket (Linux specific and less secure)) and more platform-agnostic.

Dmitriy notifications@github.com ezt írta (időpont: 2018. aug. 2., Cs, 4:07):

@tgulacsi https://github.com/tgulacsi and @natefinch https://github.com/natefinch can you please help with an answer: Why would you choose communicating over stdin/stdout instead of with Unix domain sockets? Is either method more reliable?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/natefinch/pie/issues/10#issuecomment-409782167, or mute the thread https://github.com/notifications/unsubscribe-auth/AAPoSj6-FBgVayI9pFNeGdGysIjpUm3kks5uMl7PgaJpZM4G6ome .

natefinch commented 6 years ago

Yeah, mostly because the performance of Unix domain sockets on windows is really bad. ;)