Продолжение темы про 3D-мир :)
Упрощённо задача стоит такая. Есть тысяча соединений, взаимодействующих с большим игровым миром.
Нужно минимизировать время отклика, не повышая загрузку сервера.
Классическое решение, применяемое всюду - это TCP.
geek говорит о более эффективной реализации задачи через UDP.
По скорости - согласен.
Проблема в том, что в моём представлении основная часть игровых команд требует подтверждения о передаче. С TCP это гарантируется. С UDP придётся отсылать подтверждение о получении. Т.е. с одной стороны клиент (при отсутствии ошибок) быстрее получит пакет и начнёт действовать, с другой - серверу придётся помнить об этом пакете (в то время, как TCP-пакет просто тупо будет отправлен и забыт), при отсутствии подтверждения через заданное время перепосылать его или предпринимать какие-то действия и т.п.
Плюс к этому за счёт пакетов подтверждения возрастает трафик.
Ваши соображения? Кто-то на практике с этим вопросом сталкивался?