Понимание настройки соединения HTTPS - PullRequest
1 голос
/ 11 февраля 2012

Я создаю веб-приложение для чата, которое должно будет отправлять запросы AJAX для каждого отправленного или полученного сообщения.Мне бы хотелось, чтобы данные были зашифрованы, и я склоняюсь к запуску AJAX (с длинным опросом) по HTTPS.

Однако, поскольку частота запросов здесь намного выше, чем при обычном просмотре веб-страниц, яЯ хотел бы лучше понять издержки (использование сети, время, серверный ЦП, клиентский ЦП) при настройке зашифрованного соединения для каждого HTTPS-запроса.

Помимо любой общей информации / совета, яЛюбопытно:

  • Как очень грубое приближение, сколько дополнительного времени занимает запрос HTTPS по сравнению с HTTP?Допустим, длина контента составляет 1 байт, а средний ПК - *. 1008 *
  • Будет ли каждый AJAX-запрос после первого иметь что-нибудь существенное в кеше, что позволит быстрее установить соединение?Если да, то насколько быстрее?

Заранее спасибо: -)

Ответы [ 2 ]

1 голос
/ 11 февраля 2012

Все в HTTPS медленнее.Личная информация не должна кэшироваться, у вас есть шифрование на обоих концах, а SSL-рукопожатие относительно медленное.

Длинный опрос поможет.Долго живи хорошо.Включение сеансов SSL на вашем сервере также позволит избежать больших накладных расходов.

Реальный трюк заключается в балансировке нагрузки или любом законном кэшировании.Не уверен, сколько это будет играть в вашей системе, будучи сервером чата, но это то, что нужно учитывать.

0 голосов
/ 12 февраля 2012

Вы получите больше информации от этой статьи .

Большинство накладных расходов находится на рукопожатии (обмен сертификатами, проверка их отзыва, ...).В этом отношении помогает возобновление сеанса и недавнее расширение false start .По моему опыту, худший сценарий случается, когда используется проверка подлинности с помощью сертификата клиента и реклама слишком большого количества ЦС ( сообщение CertificateRequest, отправленное сервером, может даже стать слишком большим );это довольно редко, так как на практике, когда вы используете аутентификацию на основе сертификатов клиентов, вы принимаете только сертификаты клиентов от ограниченного числа центров сертификации.

Если вы правильно настроите свой сервер (для ресурсов, для которых он подходит)Вы также можете включить кэширование в браузере для ресурсов, обслуживаемых по HTTPS, используя Cache-Control: public.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...