backend: add parameter to launch a number of generation workers
This commit is contained in:
parent
97a3aa713f
commit
c2c5cf4ce3
@ -28,6 +28,7 @@ type genStruct struct {
|
|||||||
Type GenerateType
|
Type GenerateType
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var parallelJobs = runtime.NumCPU()
|
||||||
var genTeamQueue chan *fic.Team
|
var genTeamQueue chan *fic.Team
|
||||||
var genQueue chan genStruct
|
var genQueue chan genStruct
|
||||||
var inQueueMutex sync.RWMutex
|
var inQueueMutex sync.RWMutex
|
||||||
@ -37,8 +38,11 @@ func init() {
|
|||||||
genTeamQueue = make(chan *fic.Team)
|
genTeamQueue = make(chan *fic.Team)
|
||||||
genQueue = make(chan genStruct)
|
genQueue = make(chan genStruct)
|
||||||
inGenQueue = map[GenerateType]bool{}
|
inGenQueue = map[GenerateType]bool{}
|
||||||
|
}
|
||||||
|
|
||||||
for i := runtime.NumCPU(); i > 0; i-- {
|
func launchWorkers() {
|
||||||
|
log.Println("Running with", parallelJobs, "worker(s)")
|
||||||
|
for i := parallelJobs; i > 0; i-- {
|
||||||
go consumer()
|
go consumer()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -87,6 +87,7 @@ func main() {
|
|||||||
flag.StringVar(&fic.FilesDir, "files", "/files", "Request path prefix to reach files")
|
flag.StringVar(&fic.FilesDir, "files", "/files", "Request path prefix to reach files")
|
||||||
var debugINotify = flag.Bool("debuginotify", false, "Show skipped inotofy events")
|
var debugINotify = flag.Bool("debuginotify", false, "Show skipped inotofy events")
|
||||||
flag.BoolVar(&skipInitialGeneration, "skipfullgeneration", skipInitialGeneration, "Skip the initial regeneration")
|
flag.BoolVar(&skipInitialGeneration, "skipfullgeneration", skipInitialGeneration, "Skip the initial regeneration")
|
||||||
|
flag.IntVar(¶llelJobs, "jobs", parallelJobs, "Number of generation workers")
|
||||||
flag.Parse()
|
flag.Parse()
|
||||||
|
|
||||||
log.SetPrefix("[backend] ")
|
log.SetPrefix("[backend] ")
|
||||||
@ -97,6 +98,8 @@ func main() {
|
|||||||
|
|
||||||
rand.Seed(time.Now().UnixNano())
|
rand.Seed(time.Now().UnixNano())
|
||||||
|
|
||||||
|
launchWorkers()
|
||||||
|
|
||||||
log.Println("Creating submission directory...")
|
log.Println("Creating submission directory...")
|
||||||
if _, err := os.Stat(SubmissionDir); os.IsNotExist(err) {
|
if _, err := os.Stat(SubmissionDir); os.IsNotExist(err) {
|
||||||
if err := os.MkdirAll(SubmissionDir, 0777); err != nil {
|
if err := os.MkdirAll(SubmissionDir, 0777); err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user