48 lines
1 KiB
Go
48 lines
1 KiB
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"fmt"
|
|
"io/ioutil"
|
|
"net"
|
|
"os"
|
|
|
|
"github.com/barakmich/go_raylet/ray_rpc"
|
|
"go.uber.org/zap"
|
|
"google.golang.org/grpc"
|
|
"google.golang.org/grpc/credentials/insecure"
|
|
"google.golang.org/grpc/grpclog"
|
|
)
|
|
|
|
var (
|
|
gRPCPort = flag.Int("grpc-port", 50050, "The gRPC server port")
|
|
httpPort = flag.Int("http-port", 8080, "The HTTP server port")
|
|
)
|
|
|
|
var log grpclog.LoggerV2
|
|
|
|
func init() {
|
|
log = grpclog.NewLoggerV2(os.Stdout, ioutil.Discard, ioutil.Discard)
|
|
grpclog.SetLoggerV2(log)
|
|
}
|
|
|
|
func main() {
|
|
flag.Parse()
|
|
logger, _ := zap.NewDevelopment()
|
|
zap.ReplaceGlobals(logger)
|
|
addr := fmt.Sprintf("0.0.0.0:%d", *gRPCPort)
|
|
lis, err := net.Listen("tcp", addr)
|
|
if err != nil {
|
|
logger.Fatal("Failed to listen:", zap.Error(err))
|
|
}
|
|
s := grpc.NewServer(
|
|
grpc.Creds(insecure.NewCredentials()),
|
|
)
|
|
server := NewMemRaylet()
|
|
ray_rpc.RegisterRayletDriverServer(s, server)
|
|
ray_rpc.RegisterRayletWorkerConnectionServer(s, server)
|
|
|
|
// Serve gRPC Server
|
|
fmt.Println("Serving gRPC on https://", addr)
|
|
s.Serve(lis)
|
|
}
|