Проблема:
У меня есть большое количество больших сообщений для сериализации и отправки по сети.
Я хотел бы максимизировать производительность, поэтому я думаю о создании нескольких потоков для сериализации сообщений и одного потока для отправки данных. Идея состоит в том, чтобы динамически определять количество потоков для сериализации на основе производительности сети. Если данные отправляются быстро и сериализация является узким местом, добавьте больше потоков для ускорения сериализации. Если сеть медленная, используйте меньше потоков и полностью остановитесь, если буфер отправки заполнен.
Есть идеи, как это сделать?
Каков наилучший алгоритм для определения необходимости большего или меньшего количества потоков?
Как правильно объединить результаты сериализации из нескольких потоков?
Пожалуйста, ответьте на любой из этих вопросов? Спасибо