I work in a fin tech company that develops trading systems using Meta Trader Manager Api implemented in C#, we have our own process that hides the meta trader dependencies and exposes server to client and client to server operations to other systems we have via tcp client and Socket class.
We were thinking on switching to grpc but the main concern i have is that i don't see an easy implementation of server to client notifications in grpc.
The only solution i saw was a work around on grpc long lived client to server stream where you need to keep the call alive in the server using a lock or an endless loop and save the client's write stream in the server side and calling it when the notification event is triggered.
plus on the client side i see that i need to create for each notification's event handler an endless loop as well to call ResponseStream.MoveNext() for subsequent notifications.
it seems to me that either grpc is not built for this usage or I'm missing something.