Статьи

Оптимизация в облаке: aiCache

Существует множество способов оптимизировать ваш сайт, чтобы он работал быстрее и снизить нагрузку на сервер. Обычно это требует много настроек вашего кода и базы данных и может быть довольно сложной задачей, если вы хотите ускорить динамический сайт, такой как сайт электронной коммерции.

aiCache предлагает вам ярлык для этого и обещает, что он может ускорить ваш сайт в течение 10 минут с повышением скорости до 10 раз. Посмотрим, правда ли это.

Что такое aiCache?

Как следует из названия, aiCache — это решение для кэширования вашего сайта. Вы размещаете его перед своими собственными серверами и маршрутизируете свой трафик через сервер aiCache.

Созданный с учетом облака, вы можете развернуть его как экземпляр Amazon EC2 AMI, который позволяет увеличивать масштаб при росте трафика.

Это позволяет вам кэшировать динамический сайт без изменения вашего кода.

Он утверждает, что на одном (!) Хорошо сконфигурированном сервере вы можете обслуживать до 160M рег / час. aiCache также оптимизирует ваш сайт для мобильных посетителей и дает вам возможность настроить его как брандмауэр DDoS.

Как это работает?

aiCache действует как прокси, он загружает сайт как любой клиент, а затем весь контент, указанный в вашей конфигурации, будет загружен в оперативную память экземпляра. Вот откуда происходит значительное улучшение загрузки страницы, и это освобождает ваш исходный сервер.

Каждый запрос, полученный на ваш сайт, затем загружается из этого кэша, который обновляется при изменении вашего контента (в зависимости от TTL вашего контента). Он будет кешировать только содержимое вашего сайта. Внешне загруженные ресурсы (например, скрипты отслеживания) будут по-прежнему загружаться с исходного сервера.

Вы можете использовать aiCache в конфигурации с балансировкой нагрузки для обеспечения избыточности. Вы также можете использовать экземпляры aiCache для своей глобальной распределительной сети, используя их партнера Dyn. Вы просто развертываете экземпляр в каждом желаемом регионе и настраиваете правила распределения трафика. Таким образом, вы можете создать свой собственный умный CDN не только для статических файлов, но и для динамических страниц.

Тестирование sitepoint.com

Ускорение SitePoint.com

Теперь давайте выясним, какого улучшения скорости вы можете ожидать. aiCache предоставляет хороший инструмент для этого. Используя SitePoint.com в качестве примера, это текущие результаты:

Серверы aiCache размещены в: Восток США — Северная Вирджиния и Запад США — Северная Калифорния. Оригинал размещен в США-Восток.

Тестовое место Оригинальный сайт aiCache США Восток % aiCache США Запад %
Сан-Франциско 4.861 сек 3,834 сек — 21% 3,782 сек — 22%
Сингапур 8,85 сек 6,44 сек — 27% 6,426 сек — 27%
Дублин 5,995 сек 4,274 сек — 28% 4,554 с — 24%
Вашингтон 4,589 с 4,078 сек — 11% 3,422 сек — 25%

Примечание: aiCache использует Amazon AWS для этого теста. Время загрузки измеряется с помощью Neustar.

Как видите, улучшение времени загрузки на 25% должно быть легко достигнуто даже при стандартной настройке aiCache. Вы можете настроить его еще больше, чтобы улучшить эти результаты. И помимо сокращения времени загрузки, он также сильно снижает нагрузку на сервер, поэтому вы можете уменьшить свой счет за хостинг.

Поскольку это выглядит многообещающе, пришло время настроить aiCache для себя и посмотреть, действительно ли это так просто.

Настройка экземпляра aiCache EC2

Прежде чем вы сможете что-либо сделать, вам нужна рабочая учетная запись Amazon AWS. Вы можете запустить aiCache с собственного веб-сайта или выполнить его поиск на торговой площадке AWS. Сначала необходимо подписаться, после чего вы будете развертывать экземпляр EC2 с панели мониторинга EC2.

Что именно вам нужно заполнить, описано в их вики, но в основном вам нужно создать файл конфигурации, чтобы указать, какой сайт вы используете. Вы можете хранить это в Amazon S3 для удобства. Когда это будет сделано, вы перейдете в раздел EC2 AWS.

С помощью навигации слева вы можете запустить экран AMI и выполнить поиск в общедоступных AMI для aiCache.

базарная площадь

После выбора правильного AMI, вы можете запустить свой экземпляр.

Я использовал маленький экземпляр для моего примера. После выбора вы должны выполнить процедуру EC2 для настройки вашего экземпляра. Это также часть, где вы должны заполнить ссылку на файл конфигурации, который вы сделали в S3.

Затем вы запускаете и ждете, когда экземпляр оживет. Вы можете проверить, работает ли он, заполнив общедоступный DNS в своем браузере. Если предполагаемый сайт загружается, вы в порядке.

Вот и все. Это действительно займет всего несколько минут, чтобы настроить его. Ожидание восстановления вашего экземпляра после запуска занимает больше времени, чем его настройка. Как только вы удовлетворены, вам нужно всего лишь изменить свою запись A в настройках DNS, и все готово.

Результаты теста

После развертывания собственного экземпляра я снова провел несколько тестов на время загрузки:

Sitepoint.com

Тестовое место Оригинальный сайт aiCache США Восток % aiCache США Запад %
Сан-Франциско 4,92 сек 4,71 сек — 4% 4,72 сек — 4%
Сингапур 11,7 сек 7,65 сек — 35% 8,08 сек — 31%
Дублин 6,88 сек 8,03 сек + 17% 7,68 сек + 12%
Вашингтон 5,52 сек 4,06 сек — 26% 3,49 сек — 37%

Примечание. Все тесты выполняются несколько раз, чтобы исключить сбои.

Есть несколько интересных выводов:

  • Время загрузки для Сан-Франциско одинаково как для оптимизированного, так и для неоптимизированного сайта. Это было последовательно при каждой загрузке.
  • Сингапуру потребуется экземпляр, размещенный на местном уровне, чтобы получить реальную выгоду: несмотря на значительное сокращение времени загрузки все еще слишком велико.
  • Не так много, чтобы выиграть в Дублине, для этого потребуется местный экземпляр.
  • Результаты для Вашингтона, округ Колумбия, впечатляют. И сайты aiCache работали стабильно, в то время как исходный сайт подпрыгивал во время загрузки.
  • Первоначальное тестирование и мои тесты проводились в разные даты и время.

Несмотря на то, что Sitepoint.com хорошо кешируется, он все же тяжелый сайт. Он также загружает много внешних запросов (в основном рекламных), которые aiCache не может кэшировать. Но есть место для улучшения, по крайней мере, для западного побережья.

И это только необработанные данные: из-за кэширования большая часть визуальной загрузки сайта выполняется всего за десятки миллисекунд. Это означает, что посетители увидят ваш сайт очень быстро, так как большая часть его показывается до того, как он полностью загрузится. Кроме того, есть преимущество, заключающееся в снижении нагрузки на сервер, даже при сокращении времени загрузки всего на 4% (как в Сан-Франциско). Это означает сокращение нескольких интерфейсных серверов, что снижает ваши расходы.

Теперь посмотрим на некоторые другие примеры, чтобы увидеть, где aiCache может принести наибольшую пользу.

WebtoolsReview.com : один из моих собственных сайтов, который в настоящее время разрабатывается. Использует только базовую тему Twenty Eleven с WordPress.org, без внешнего ресурса, только пример контента.

Тестовое место Оригинальный сайт aiCache США Восток % aiCache США Запад %
Сан-Франциско 2,049 сек 0,806 с — 61% 0,968 сек — 53%
Сингапур 5,111 сек 2,226 сек — 56% 2,285 сек — 55%
Дублин 1,94 сек 0,854 сек — 56% 1,239 сек — 36%
Вашингтон 1,386 сек 0,754 сек — 45% 0,779 сек — 43%

Как видите, исходное время загрузки уже очень медленное. Кэширование по-прежнему экономит около 50% времени загрузки.

Давайте посмотрим, что AiCache может сделать для некоторых из крупнейших (и наиболее оптимизированных) сайтов в округе.

Тестовое место Оригинальный сайт Оригинальный сайт aiCache США Запад %
Сан-Франциско Google.com 1,52 сек 0,968 сек — 36%
Вашингтон Google.com 1,475 сек 0,798 сек — 46%
Сан-Франциско Youtube.com 2,565 сек 2,394 сек — 8%
Вашингтон Youtube.com 2,863 сек 2,072 сек — 28%
Сан-Франциско Yahoo.com 3,394 сек 1,264 сек — 62%
Вашингтон Yahoo.com 3,414 сек 0,896 сек — 74%

Для этого теста я использовал только результаты сервера США.

Как видите, даже Google.com, очень легкий сайт, может извлечь выгоду из кеширования. Youtube.com, с другой стороны, не принесет такой же пользы. Как вы можете видеть на водопаде ниже, их домашняя страница загружает множество изображений и небольших файлов .js, которые уже подаются со скоростью света.

Yahoo.com действительно может извлечь выгоду из AiCache. Это ресурсный сайт, который загружается быстрее, если обслуживается из памяти, независимо от того, насколько хорош ваш CDN.

водопад

Youtube водопад.

ценообразование

Если честно, aiCache стоит дорого.

В настоящее время Amazon внедряет новую модель оплаты для разработчиков, но «самый дешевый» вариант — заказать ее по ссылке на сайте aiCache ( заказать aiCache ). Они хотят упростить оценку: экземпляр aiCache в два раза дороже базового экземпляра. Это составляет до 0,13 долл. В час для небольшого экземпляра, где вы обычно платите 0,065 долл. В час за базовый экземпляр. Существует также ежемесячная плата за поддержку в размере 15 долларов США. Запуск одного экземпляра обходится вам в 108,60 долларов в месяц.

Это кажется много, но для почти безубыточности это означает отмену двух маленьких (не aiCache) экземпляров или одного стандарта (без учета ежемесячной платы за поддержку). Это предполагает, что вы запускаете три или более экземпляров, так как вам всегда нужен ваш исходный сервер.

Вывод

aiCache выглядит как отличный продукт, если он вам нужен. Это не всегда дает вам реальное повышение скорости, но снижает нагрузку на сервер как дополнительное преимущество.

Это дорогое решение, когда вы используете только один сервер, но оно может быть экономичным, если на вас работает несколько экземпляров. И помните, в этом обзоре я только коснулся их функции кэширования, но есть также мобильная оптимизация и защита от DDoS.

Мой собственный опыт подтверждает, что у них есть фантастическая команда поддержки, которая очень помогла мне с моими исследовательскими вопросами.

Если вы хотите узнать, сможете ли вы ускорить свой собственный сайт, вот инструмент для этого: http://aicache.com/deploy .