Назад | Перейти на главную страницу

Высокая задержка в домене с CDN

Высокая задержка в домене с CDN

У меня проблемы с задержкой на моем сервере, это тесты, которые я сделал с blitz.io

Альбом задержки

http://imgur.com/a/bCmwo

Я бы загрузил сюда изображения, но для этого требуется 10+ повторений, и я не могу публиковать несколько ссылок, поэтому я загрузил изображения в альбом на imgur.

Мой домен размещен на Cloudflare CDN. Я принимаю Облачный хостинг на SSD, DigitalOcean.

Задержка на сервере был ~ 40 мс при отсутствии трафика.

Задержка на сервере с CDN сейчас ~ 270 мс

Задержка на сервере без CDN составляет ~ 300 мс

Ранее я размещал на Windows Azure,

Задержка без движения было ~ 70 мс

Задержка с пробками было ~ 210 мс

Тем не менее, несмотря на то, что задержка в DigitalOcean выше, мой контент загружается намного быстрее, чем на серверах Windows Azure.

Старый сервер Azure, альбом

imgur.com/a/fpHK9

Я не могу разместить больше 2 ссылок, c / p в браузере

На сервере DigitalOcean не настроен брандмауэр, по умолчанию использовалась FW Azure на серверах Microsoft Azure, конфигурация с конечными точками.


Содержание

Размер полезной нагрузки

изображений ~ 156 КБ

CSS ~ 12 КБ

логотип ~ 20 КБ

случайный контент, загружаемый при каждом просмотре страницы по 4 КБ

общий размер случайного содержимого 116 КБ, которое загружается

всего ~ 300 КБ, все размещено через CDN. Не все загружаются сразу.

Статистика Cloudflare, альбом

imgur.com/a/qxnbo

Я не могу разместить больше 2 ссылок, c / p в браузере

Анализ сети с помощью Firefox, альбом

http://imgur.com/a/XLZNc

Контент загружается после завершения загрузки страницы.


объем памяти

Сервер работает на lighttpd.

объем памяти

XXX@XXX:~# free -h
             total       used       free     shared    buffers     cached
Mem:          995M       835M       159M         0B       150M       471M
-/+ buffers/cache:       214M       780M
Swap:         1.0G        26M       997M

верхний

top - 14:29:13 up 21 days,  1:00,  1 user,  load average: 0.00, 0.04, 0.05
Tasks:  95 total,   1 running,  94 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.0 us,  1.4 sy,  0.0 ni, 94.3 id,  0.7 wa,  0.0 hi,  0.7 si,  0.0 st
KiB Mem:   1019056 total,   856144 used,   162912 free,   153748 buffers
KiB Swap:  1048572 total,    27084 used,  1021488 free,   482660 cached

Капля горит 1 Гбит общее соединение.


Подключения

При выдаче netstat -n я считаю ~ 620 соединений TIME_WAIT / ESTABLISHED

При выдаче netstat -n | grep 'ESTABLISHED' Я насчитал ~ 120 подключений


100 МБ тест

100 МБ скачать тест

XXX@XXX:~# wget speedtest.london.linode.com/100MB-london.bin
--2013-09-05 14:35:08--  speedtest.london.linode.com/100MB-london.bin
Resolving speedtest.london.linode.com (speedtest.london.linode.com)... 176.58.107.39, 2a01:7e00::4b
Connecting to speedtest.london.linode.com (speedtest.london.linode.com)|176.58.107.39|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/octet-stream]
Saving to: ‘100MB-london.bin’

100%[===================================================================================================>] 104,857,600 8.46MB/s   in 11s

2013-09-05 14:35:19 (9.47 MB/s) - ‘100MB-london.bin’ saved [104857600/104857600]

Тест загрузки 100 МБ

Я создал другой сервер и только что загрузил из него один и тот же файл размером 100 МБ

XXX@XXX:~# wget domain_with_no_cdn.com/test/100MB-london.bin
--2013-09-05 12:38:00--  domain_with_no_cdn.com/test/100MB-london.bin
Resolving domain_with_no_cdn.com (domain_with_no_cdn.com)... Server_IP
Connecting to domain_with_no_cdn.com (domain_with_no_cdn.com)|Server_IP|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/octet-stream]
Saving to: `100MB-london.bin'

100%[=======================================================================================>] 104,857,600 13.4M/s   in 6.1s

2013-09-05 12:38:07 (16.5 MB/s) - `100MB-london.bin' saved [104857600/104857600]

Тест загрузки 100 МБ через CDN

XXX@XXX:~# wget domain_over_CDN.com/test/100MB-london.bin
--2013-09-05 12:44:26--  domain_over_CDN.com/test/100MB-london.bin
Resolving domain_over_CDN.com (domain_over_CDN.com)... 108.162.200.169, 141.101.127.168
Connecting to domain_over_CDN.com (domain_over_CDN.com)|108.162.200.169|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/octet-stream]
Saving to: `100MB-london.bin'

100%[=======================================================================================>] 104,857,600 12.5M/s   in 11s

2013-09-05 12:44:37 (8.96 MB/s) - `100MB-london.bin' saved [104857600/104857600]

Можете ли вы сказать мне, каковы возможные проблемы с моей настройкой?

Не могли бы вы дать мне несколько руководств или ссылок, где я могу узнать, как сбалансировать нагрузку между серверами или что именно мне нужно сделать, чтобы получить задержку менее 100 мс.


День 2, тестирование

Я связался со службой поддержки Cloudflare, и они решили проблему в моей стране, но не все серверы сообщают о задержке ниже 100 мс.

Я разместил новые фотографии в альбоме

imgur.com/a/xajge

Я не могу разместить больше 2 ссылок, c / p в браузере

Как вы можете видеть на рисунке 2, все еще существуют проблемы с серверами в США на доменах с CDN. Я предполагаю, что у них возникли проблемы из-за обновлений оборудования за последние несколько недель, но я хотел бы знать, как снизить задержку на моем собственном сервере ниже 100 мс.

Я разделяю сервер пиксельного пинга и сервер данных, так что надеюсь, это снизит задержку.

Если у кого-то есть какие-либо рекомендации, которые могут решить мои проблемы, пожалуйста, приветствуется любая помощь :)