| 123456789101112131415161718192021222324252627282930313233343536373839 |
- package main
- import (
- "fmt"
- "runtime"
- "github.com/gin-gonic/gin"
- )
- func main() {
- ConfigRuntime()
- StartWorkers()
- StartGin()
- }
- func ConfigRuntime() {
- nuCPU := runtime.NumCPU()
- runtime.GOMAXPROCS(nuCPU)
- fmt.Printf("Running with %d CPUs\n", nuCPU)
- }
- func StartWorkers() {
- go statsWorker()
- }
- func StartGin() {
- gin.SetMode(gin.ReleaseMode)
- router := gin.New()
- router.Use(rateLimit, gin.Recovery(), gin.Logger())
- router.LoadHTMLGlob("resources/*.templ.html")
- router.Static("/static", "resources/static")
- router.GET("/", index)
- router.GET("/room/:roomid", roomGET)
- router.POST("/room-post/:roomid", roomPOST)
- router.GET("/stream/:roomid", streamRoom)
- router.Run(":80")
- }
|