go中的典型用法是:
server := grpc.NewServer()
pb.RegisterUserServer(server, &userSrvc.UserServer{})
addr := ":" env.GetMyRpcPort()
lis, _ := net.Listen("tcp", addr)
server.Serve(lis)
我想知道我可以在連接的 conn 上運行服務器,例如:
conn, _ := net.Dial("tcp",":8080")
server.Serve(conn)
客戶端先連接服務器,然后在連接的net.conn上構建一個grpc服務器,然后服務器可以rpc呼叫客戶端將一些訊息作為請求推送給客戶端。
uj5u.com熱心網友回復:
我認為你需要一個雙向流。這是在 Go 中使用雙向 GRPC 的一個詳細示例:https : //github.com/pahanini/go-grpc-bidirectional-streaming-example。
conn, err := grpc.Dial(":50005", grpc.WithInsecure())
...
client := pb.NewMathClient(conn)
stream, err := client.Max(context.Background())
...
req := pb.Request{Num: rnd}
err := stream.Send(&req)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/404491.html
標籤:
上一篇:gorm多對多問題
