Listen http server in main thread

pull/1/head
Nikita Tokarchuk 2 years ago
parent c20306c118
commit b106844c22
Signed by: mainnika
GPG Key ID: A595FB7E3E56911C
  1. 29
      frontend/main.go
  2. 1
      go.mod

@ -2,9 +2,11 @@ package main
import (
"fmt"
"net"
"github.com/sirupsen/logrus"
"github.com/spf13/viper"
"github.com/valyala/fasthttp"
"code.tokarch.uk/mainnika/nikita-tokarch-uk/frontend/config"
)
@ -28,6 +30,33 @@ func main() {
logrus.Warnf("Cannot unmarshal config, %v", err)
}
var netw, addr string
switch {
case config.Addr != "":
netw = "tcp"
addr = config.Addr
case config.Unix != "":
netw = "unix"
addr = config.Unix
default:
panic("no address given")
}
netListener, err := net.Listen(netw, addr)
if err != nil {
logrus.Fatal(err)
}
httpServer := fasthttp.Server{
Logger: logrus.StandardLogger(),
GetOnly: true,
}
logrus.Infof("Version: %s", Version)
logrus.Debugf("Addr: %s+%s", netw, addr)
logrus.Debugf("Conf: %#v", config)
err = httpServer.Serve(netListener)
if err != nil {
logrus.Fatal(err)
}
}

@ -6,4 +6,5 @@ require (
github.com/sirupsen/logrus v1.8.1
github.com/spf13/pflag v1.0.5
github.com/spf13/viper v1.9.0
github.com/valyala/fasthttp v1.31.0
)

Loading…
Cancel
Save