River works great but if I try enqueue a job that has a worker running in a separate process (and thus using a different River client) I get a:
job kind is not registered in the client's Workers bundle: <job kind>
I dug into the code a little and indeed it checks for workers that were registered on that same client:
if _, ok := c.config.Workers.workersMap[args.Kind()]; !ok {
return &UnknownJobKindError{Kind: args.Kind()}
}
I would like to run some workers in a separate process because some of the jobs require a lot of memory and these processes are more likely to get OOM killed (or potentially have CPU starvation). I don't want these jobs to disrupt the response time or reliability of the main process which serves HTTP requests.
Is this something that will be supported in the future or a non-goal for the project at the moment?
River works great but if I try enqueue a job that has a worker running in a separate process (and thus using a different River client) I get a:
I dug into the code a little and indeed it checks for workers that were registered on that same client:
I would like to run some workers in a separate process because some of the jobs require a lot of memory and these processes are more likely to get OOM killed (or potentially have CPU starvation). I don't want these jobs to disrupt the response time or reliability of the main process which serves HTTP requests.
Is this something that will be supported in the future or a non-goal for the project at the moment?