Как ускорить загрузку сайта для противоположной стороны планеты
В настоящее время я запускаю небольшую часть программного обеспечения PHP, к которой обращаются две группы людей, одна группа в Китае, другая в Ирландии. Сервер размещен в Ирландии, и, без сомнения, страницы загружаются между 0,3 и 0,8 секунды.
Китайский народ записывает время от 3,0 секунды до 10 секунд.
У меня есть тесты скорости, и у китайцев есть подключение к Интернету на 1,5 Мбит (сервер тестирования в Ирландии) и пинг 750 мс.
Пока, чтобы увеличить время загрузки, я переделал много взаимодействия с базами данных MySQL, чтобы максимально повысить эффективность, но это не помогло. Я предполагаю, что это лишь немного сокращает время обработки сервера, но мало влияет на время загрузки страницы.
Я думал, могу ли я получить хостинг в Китае и использовать его в качестве шлюза для системы в Ирландии. Разумеется, латентность и скорость загрузки между этим китайским сервером были бы лучше, чем средний человек. И запросы средних людей были бы перенаправлены сюда.
Звучит ли это вообще? Или у кого-нибудь есть предложения по этому поводу?
Ответы
Ответ 1
Самая большая проблема - латентность. Если вы можете свести к минимуму HTTP-запросы, вы должны увидеть большие выигрыши.
Но, возможно, проще просто купить сервисы сети доставки контента и переместить все ваши статические файлы на них, убедившись, что у них есть хорошо подключенные серверы в Китае и Ирландии. Я думаю, что это проще, чем перепроектировать ваш сайт.
Самый дешевый взлом для доллара исходит от отправки подходящих заголовков HTTP, чтобы указать веб-браузерам, что им не нужно постоянно проверять свои серверы для проверки свежести (не выполняйте условные HTTP-запросы). Если вы можете сделать это для всех объектов внешней веб-страницы (изображения, css, js и т.д.), То загрузка первой страницы будет продолжаться 10 секунд или что-то еще, но последующие загрузки страниц должны быть очень близки к вашим посетителям ирландского языка. Это всего лишь вопрос конфигурации веб-сервера. Heres учебник, если необходимо. Честно говоря, отправка заголовков, дружественных к кэшу, всегда хорошая идея, вот как вы получаете те мгновенные отзывчивые веб-сайты, которые нам всем нравятся.
Ответ 2
Сначала Следуйте рекомендациям по ускорению вашего веб-сайта. Затем также проверьте YSlow, чтобы измерить скорость вашего сайта и проверить, что вы можете сделать для повышения производительности.
Я думаю, что смена серверов не даст вам лучшего ответа.
Я думаю, вам стоит сначала позаботиться о оптимизации, а затем проверить хорошую и мощную хостинговую компанию и план размещения.
Приветствия
Ответ 3
Хостинг/зеркалирование в Китае, безусловно, путь. Это будет быстрее для людей и надежнее. В идеале вы бы также провели его в Ирландии, и у вас есть какая-то балансировка нагрузки.
Ответ 4
Я бы точно отразил ваш сайт на сервере где-то в Азии. Вы уже сделали некоторые улучшения производительности, которые не привели к значительно лучшим результатам из Китая, поэтому я предполагаю, что задержка в сети вызывает большую часть времени загрузки.
Вы можете развернуть свой веб-сайт в одну из облачных сервисов. экземпляры Amazon EC2 доступны, например, в Сингапуре и Токио. Или вы можете развернуть "обычного" веб-хостера в Китае.
Если вам нужно доставлять в основном статические файлы, проверьте службу службы распространения контента (CDN).
Ответ 5
Чтобы ускорить время загрузки, вы можете разместить ваши статические файлы (изображения, css, javascript, документы) в CDN (сеть доставки контента). CDN работают, размещая ваши файлы в нескольких узлах по всему миру. Как только он получит запрос, ближайший сервер к посетителю будет обслуживать файл - таким образом, уменьшая задержку.
Вы можете попробовать CloudFlare (http://cloudflare.com), это бесплатный продукт, который служит обратным прокси и CDN вашего сайта. Вместо того, чтобы пользователь напрямую обращался к сайту, CloudFlare будет одним из них, чтобы получить доступ к вашему сайту и оптимизировать его для доставки посетителю.
Ответ 6
Переместитесь в облако.
http://en.wikipedia.org/wiki/Cloud_computing
Ответ 7
Я делаю то же самое. Я создам зеркало сайта на облаке aliyun.com. Я размещаю свой сайт (www.discoverwish.com) на площадке в Сингапуре, но время загрузки для моих китайских пользователей без VPN невероятно медленное.
Я буду использовать rsync, чтобы синхронизировать информацию, а затем перенаправить китайских пользователей с помощью DNSpod
Ответ 8
Относительно этого комментария: "Возможно, вы захотите попробовать CloudFlare ( http://cloudflare.com), это бесплатный продукт, который служит обратным прокси-сервером и CDN вашего сайта. Вместо того, чтобы пользователь напрямую обращался к сайту, CloudFlare будет одним из них, чтобы получить доступ к вашему сайту и оптимизировать его для доставки посетителю".
Мы попробовали это для клиента в Китае, но, к сожалению, CloudFlare еще не имеет локальной версии своего CDN, работающего в Китае. В настоящее время мы тестируем CDR Amazon, который, как представляется, имеет положительные отзывы.