fix: limit the different worker pools to available CPU cores. Should resolve #3189

This commit is contained in:
Gabe Kangas
2023-07-18 20:26:44 -07:00
parent b1381170c1
commit d0376cdc75
4 changed files with 14 additions and 16 deletions

View File

@@ -1,14 +1,14 @@
package inbox
import (
"runtime"
"github.com/owncast/owncast/activitypub/apmodels"
log "github.com/sirupsen/logrus"
)
const (
// InboxWorkerPoolSize defines the number of concurrent ActivityPub handlers.
InboxWorkerPoolSize = 10
)
// workerPoolSize defines the number of concurrent ActivityPub handlers.
var workerPoolSize = runtime.GOMAXPROCS(0)
// Job struct bundling the ActivityPub and the payload in one struct.
type Job struct {
@@ -22,7 +22,7 @@ func InitInboxWorkerPool() {
queue = make(chan Job)
// start workers
for i := 1; i <= InboxWorkerPoolSize; i++ {
for i := 1; i <= workerPoolSize; i++ {
go worker(i, queue)
}
}