use 1 io thread and 1 worker thread