Увеличение скорости загрузки сайта путем кэширования сайта и буферизации вывода

alex1874

Дата последнего входа: 08.12.2018 18:50:33
Дата регистрации: 09.04.2010 21:32:08
Пол: Мужской
День рождения: 18 марта

Увеличение скорости загрузки сайта путем кэширования сайта и буферизации вывода

Я думаю, для вас не будет огромной тайной, если я вам сообщу, что статичные страницы загружаются намного быстрее, чем динамичные. Все достаточно просто. Статические страницы сразу же после запроса к ним обрабатываются браузером.

С динамическими страницами чуть сложнее. Они сначала обрабатываются сервером, делаются запросы к базе данных и только потом отдается браузеру. Как вы понимаете время, затраченное на обработку страниц - увеличивается.

Я предлагаю вам реально работающую систему кэширования страниц с буферизацией вывода. Данный скрипт прекрасно работает в рамках CMS AF. Что делает данная система:

- записывает все, что происходит на сервере в файл;
- сохраняет данный файл для дальнейшего обращения к нему.

Сразу скажу, что данные сохраняются в статическом виде. Это дает нам огромное преимущество: ускорение загрузки страниц и снижение нагрузки на сервер, и базу данных.

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

Хватит теории - переходим к действию.

Что нам понадобиться для того чтобы увеличить скорость загрузки сайта:

ob_start() – функция включения буферизации вывода. Все, что будет происходить после этой функции, будет сохранено во временное хранилище;
ob_get_contents() - вывод содержимого из временного хранилища;
ob_end_flush() - выключает буферизацию вывода, но перед этим отправляет содержимое буфера вывода пользователю и очищает буфер;

Для осуществления кэширования сайта используем инструменты для работы с файлами.

fopen() - открывает файл или URL
fwrite() - записывает содержимое в файл.
fread() – читает данные из файла.
fclose() - закрывает файл.

На сервере организуем папочку cache (назвать ее вы можете как угодно), в которой будем сохранять наши статичные файлы. Так же необходимо заготовить базу данных со следующими полями page и id. В поле page записывается название страницы: index, index1, index2 и т.д. Конечно, название страницы я привел условно в качестве примера.

Теперь внимательно читайте. Реализация скрипта на примере индексной страницы.

Новые темыОбъявленияСвободное общение
09:21 АП ИКС 25.06.2019 
06:10 Продвижение в ТОП Яндекс. Мега быстро! 
05:52 Lottery Partner в поиске партнеров! Самые высокие ставки! 
18:48 Сайт неправильно отдаёт 404 
16:03 26 июня выдача 
16:00 Просел по запросам сильно. 
14:22 Упали позиции после склейки сайта 
06:29 Продам сайт строительной тематики 
06:20 Прогон по личной базе, больше 1000 трастовых сайтов! Продвижение СЧ и НЧ запросов + рост показателей! Гарантии! 
23:19 Продаем трафик из соцсети МойМир Мэйл Ру - таргет по гео и полу 
23:14 Оформление групп Вконтакте, страниц Facebook, аккаунтов Twitter 
23:10 Дизайн для групп VK (Оформление) 
20:14 Продвижение петиций на сайте change.org 
20:11 Продвижение в социальных сетях: Вконтакте, Одноклассники, Твиттер, Instagram, YOUTUBE, Facebook, Мой мир. 
05:31 Plussy - лучшая партнерка для гемблинг 
20:28 SEO продвижение сайтов в Яндекс, Google. Поднятие ИКС сайту, исправления ошибок, разработка стратегий 
16:10 Instagram трафик. Подработка не лето , и не только . СЛИВ своих материалов. 
14:36 Топик поднятия настроения. Приколы, картинки, видео и пр. 
05:02 Нужен совет 
20:27 Партнерка по торговле акциями КАНнАБИСа, получай кеш с любой сделки. 
20:26 Наши машинки