> Hi,Since the best performance are usually achieved with #threads = #cores and > its recommended to run memcached with #worker_threads = #cores. > I was wondering why does memcached have a specific thread to accept new > connections rather than have the worker threads accept new connections? > > One possible explanation I found is the Thundering_herd_problem. But I would > imagine that CPU cycles would be wasted on accept only on otherwise idle core > which I would Imagine is not an issue for most installations, am I wrong? > > I was wondering If any one could elaborate on this? Was it discussed in the > past? Is accepting new connections a rare enough event that it doesn't make a > difference? > > Thanks, > Ilya
It's been that way for a long, long time. It does help with the thundering heard problem, and tests over the years have shown that it still performs better that way. If some day the opposite becomes true, we either switch back or add an option. The foruma is 'worker_threads =~ cores', just pretend the accept thread doesn't count unless your workload never uses persistent connections. There're also some background threads that're usually idle and won't count to that total. -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
