Я добавляю онлайн-чат в приложение Silverlight. Я просматривал текущие приложения, службы и SDK, найденные через онлайн-запросы и форумы. Я нахожу, что большинство из них реализует модель клиент-сервер (C/S), и я пытаюсь понять, почему эта модель отличается от модели однорангового (PTP). Мне PTP было бы предпочтительнее, потому что переход между одноранговыми узлами был бы более эффективным (меньше IP-переходов и без обработки по серверному компьютеру), и нет необходимости в сервере, его затратах и зависимостях. Я обнаружил, что некоторые продукты предлагают возможность переключения с PTP на C/S, если PTP оказывается недостаточным.Онлайн-чат: почему модель клиент-сервер или одноранговая модель?
Как я думал об этом, я мог видеть, что C/S может быть лучше, если в разговоре участвуют более двух одноранговых узлов, тогда сервер (предположительно с большей пропускной способностью) мог бы лучше выполнять ретрансляцию каждого отправляет исходящий трафик нескольким другим партнерам. В широковещательном широковещательном канале C/S для каждого широкополосного широкополосного доступа (который является по сути узким местом), только один раз должен переносить каждый элемент голосового трафика, тогда сервер будет использовать свою превосходную пропускную способность для передачи сообщения на несколько других сверстников.
Но, в ситуации с голосовыми сообщениями один на один, кажется, что PTP будет лучше. Сервер не будет уменьшать каждый из требований к пропускной способности двух равноправных пользователей и лишь добавит лишние накладные расходы, зависимость и стоимость.
В один-на-один голос беседуя:
- я ошибаюсь на что-либо выше?
- Может ли лучшая точка зрения?
- Будет ли сервер предоставлять что-либо ценное, которое не может быть предоставлено только программой-клиентом ?
- Есть ли что-нибудь еще, что я должен принимать во внимание?
И, наконец, можете ли вы порекомендовать любые продукты голосового чата Silverlight PTP или C/S?
Заранее благодарим за любую информацию.