Init the simplest server
authorJulien Andrieux <julien@pantomath.io>
Wed, 4 Oct 2017 21:54:55 +0000 (23:54 +0200)
committerJulien Andrieux <julien@pantomath.io>
Thu, 5 Oct 2017 10:52:56 +0000 (12:52 +0200)
server/main.go [new file with mode: 0644]

diff --git a/server/main.go b/server/main.go
new file mode 100644 (file)
index 0000000..b21e631
--- /dev/null
@@ -0,0 +1,33 @@
+package main
+
+import (
+       "fmt"
+       "log"
+       "net"
+
+       "gitlab.com/pantomath-io/demo-grpc/api"
+       "google.golang.org/grpc"
+)
+
+// main start a gRPC server and waits for connection
+func main() {
+       // create a listener on TCP port 7777
+       lis, err := net.Listen("tcp", fmt.Sprintf(":%d", 7777))
+       if err != nil {
+               log.Fatalf("failed to listen: %v", err)
+       }
+
+       // create a server instance
+       s := api.Server{}
+
+       // create a gRPC server object
+       grpcServer := grpc.NewServer()
+
+       // attach the Ping service to the server
+       api.RegisterPingServer(grpcServer, &s)
+
+       // start the server
+       if err := grpcServer.Serve(lis); err != nil {
+               log.Fatalf("failed to serve: %s", err)
+       }
+}