package main import ( "git.timovolkmann.de/gyrogpsc/core" "git.timovolkmann.de/gyrogpsc/storage" "git.timovolkmann.de/gyrogpsc/web" "github.com/sirupsen/logrus" "net/http" _ "net/http/pprof" ) func main() { // launch profiling server in goroutine to debug performance issues go func() { logrus.Println(http.ListenAndServe("localhost:6060", nil)) }() // load configuration from file conf := core.ConfigurationFromFile() // initialize persistence layer repo := storage.NewRepository(conf) // initialize message distribution layer disp := core.NewDispatcher() // initialize core logic service and inject service := core.NewTrackingService(conf, repo, disp) // launch webserver web.CreateServer(service, disp, conf) }