В вашем вопросе нет информации о том, что за расчёты вы делаете. Для отдельных пользователей или что-то глобальное, результат чего нужен всем без исключения клиентам. От этого напрямую зависит логика сервера.
Насчёт сжатия — ответ простой. Не важно, много или мало вы передаёте. Исходите из того, нужно вам экономить трафик или нет. Если будете паковать данные — потеряете в производительности. Банально посчитайте, сколько времени будет уходить на упаковку и распаковку данных и уложитесь ли вы в нужное вам время, будет ли бонусом экономия трафика, если у вас плохой коннект клиента и на сжатии вы выиграете время.
Насчёт опроса тредов — вам уже ответили. Перебирать 1000 потоков, ожидая, что там что-то есть — неправильно. Потеряете время на переключении контекста. Для сервера с таким количеством подключений нужна событийная модель.