go技术之GRPC通信最简单的demo

一. 运行代码

client.go

package main

import (
   "context"
   "fmt"
   "google.golang.org/grpc"
   pb "hello-grpc/proto/grpc_hello_service"
   "log"
)

func main()  {
   conn ,err := grpc.Dial("localhost:1234",grpc.WithInsecure())
   if err != nil {
      log.Fatal(err)
   }
   defer conn.Close()

   client := pb.NewHelloServiceClient(conn)
   reply,err := client.Hello(context.Background(), &pb.String{Value:"hello"})
   if err != nil {
      log.Fatal(err)
   }
   fmt.Println(reply.GetValue())
}

server.go:

package main

import (
   "google.golang.org/grpc"
   "log"
   "net"
   pb "hello-grpc/proto/grpc_hello_service"
   "hello-grpc/service"
)

func main()  {
   grpcServer := grpc.NewServer()
   pb.RegisterHelloServiceServer(grpcServer, &service.HelloServiceImpl{})

   lis, err := net.Listen("tcp","localhost:1234")
   if err != nil {
      log.Fatal(err)
   }
   grpcServer.Serve(lis)
}

二. 运行结果

在这里插入图片描述
在这里插入图片描述

三. 参考文档

  1. 4.1 RPC 入门

猜你喜欢

转载自blog.csdn.net/weixin_45581597/article/details/127851424
今日推荐