Файлы с отображением в памяти быстрее, чем Named Pipes?

Я читал внутренние компоненты SQL Server и устранение неполадок (Wrox), и это эффективно говорит, что Shared Memory это метод подключения по умолчанию, за которым следуют TCP, а затем именованные каналы. Что любопытно, так это то, что они говорят:

"Именованные каналы были разработаны для локальных сетей (LAN), но они могут быть неэффективными в медленных сетях, таких как глобальные сети (WAN)"

Я думал, что именованные каналы были строго для IPC? И для того, чтобы перейти с IPC на сетевую связь, вам пришлось использовать TCP/UDP. Для меня более интересным является упоминание файлов с общей памятью / отображенной памятью - они быстрее, чем NamedPipes/IPC?

1 ответ

Решение

Ответ, как обычно, "Это зависит". Если задействовано много данных, разделяемая память отрежет большую часть накладных расходов при копировании. Но использование отображенного файла таким способом все еще требует некоторой вспомогательной формы IPC для координации доступа к общему пространству памяти.

Другие вопросы по тегам