alex1874: Блог

alex1874

Дата последнего входа: 02.05.2025 10:13:47
Дата регистрации: 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 и т.д. Конечно, название страницы я привел условно в качестве примера.

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

Новые темыОбъявленияСвободное общение
10:57 3snet - гемблинг, беттинг, форекс, бинарные опционы, майнинг 
19:12 Мошенники-копирайтеры 
08:57 Индексация страниц 
23:16 Есть ли альтернатива Адсенсу и РСЯ? 
20:48 Dao.AD: Монетизация и покупка Push/Pops/Inpage и Video трафика! 
18:53 Настройка плагина для wordpress Price Shop 
14:28 Подскажите нормальные поисковики на ТОР браузере 
04:14 Просто $0.04/IP 9PROXY.COM Резидентные прокси Неограниченная пропускная способность Уникальная политика замены Без чёрного списка 
23:10 BestX24 - быстрый и безопасный обменник криптовалют и электронных денежных средств 
21:10 Бесплатные виртуальные роутеры от ARB. Лучшее решение для подключения прокси на виртуальных машинах 
20:02 [Бесплатный тест] Прокси для соц. сетей с синхронизацией сетевого стека [PoF] от ARB. Решение №1 
16:07 Продаю сканы и фото паспортов, снилс и др 
15:24 Сканы Европы и Full Info США для создания PayPal 
15:23 SOCKS5 приватные прокси на 30 дней для PayPal 
21:16 Точные прогнозы на футбол 
20:32 Ням-ням! - 8 деликатесов, которые когда-то ели только бедные люди 
09:37 Договорные матчи от ИИ 
20:29 SMM-24.com САМЫЙ ДЕШЕВЫЙ SMM - Накрутка от 0.0001$|TG/TG PREMIUM/YT/TWIT/IG/TT/FB 
08:32 Бесплатный SEO аудит. 
20:52 Что сейчас топ по монетизации? Видео-темы или что-то поинтереснее? 
21:55 Хром ругается на форум