Хотя WCF рассчитан на высокую пропускную способность и низкую задержку, описанный вами сценарий раздвигает предел. Я вижу несколько способов решить:
Одним из возможных решений является объединение нескольких пакетов в один (например, 1 List<int>
с 10 элементами вместо 10 отдельных int
). Это резко сократит потери производительности за счет дополнительных элементов (заголовок и т. Д.) Для небольших пакетов.
Другая идея заключается в использовании асинхронных вызовов, поэтому задержка не ограничивает пропускную способность. Вместо ожидания прибытия предыдущего пакета, вы просто отправляете следующие пакеты немедленно. Этого также можно добиться с помощью флага OneWayCommunication.
Очевидно, что основной формат потока данных (именованный канал, TCP и т. Д.) Влияет на скорость, а также на физический канал (Ethernet и т. Д.). Насколько я знаю, tcp является одним из самых быстрых способов связи по сети и все еще чрезвычайно быстр на локальной машине.