fix server workers not being properly being destroyed on SIGINT or SIGTERM signal