- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Вот блок каторый использует кеш в файле.
Есть ли способ ускорить процесс взятия данных из кеша? просто целиком чтобы брало не построчно ни как, в текстовом файле содержится хтмл код сгенерированный пхп+мускул
file_get_contents()
кроме того, подсмотрено в codeigniter`e . В начало файла писать таймстамп. когда читается время через файловую систему, то это всё же нагрузка на неё.
заменить на
но значительного прироста это не даст
такой вариант по документации быстрее, хотя на самом деле они почти одинаковые результаты показывают.
и еще надо избавиться от двух обращений к фс за датой:
что-то в этом роде
Спасбо, сдела как вы посоветовали, но прироста не ощютил. Может есть еще какие способы?
если тормозит - то сам принцип надо пересматривать. нет смысла оптимизировать сам код дальше - много не выжмешь
Сайт, который в подписи? Если он, то довольно терпимо работаем, по крайней мере, в данный момент.
Может у вас проблемы на пути от вас до сайта?
Я бы предложил такой вариант (который к сожалению подходит только для страниц без интерактивности):
При условии что кеш проверяется в первую очередь, а если его нет, выполняется 5+ запросов к БД, то можно воспользоваться вспомогательной таблицей например
cached_pages
{
id int
url smalltext
content text
timed bigint (сравнение быстрее чем tinytext)
}
и кеш выдавать примерно следующим образом:
Если на сайте не очень много интерактивных страниц (скажем блог или новостной портал), но много посетителей - эта штука будет весьма неплохо экономить время.
А если у вас MySQL 5, то лучше всего из этого запроса сделать VIEW, причем SQL_CACHE прописать и во VIEW, и в selectе в самом скрипте.
Тогда как только первый пользователь увидит страницу скажем путем 20 запросов, всем следующим хватит 1-го. Запрос в базу незначительно медленнее чтения файла, а если учесть кеширование запросов, то на больших объемах оно даже быстрее.
Два минуса : большой объем базы на крупных сайтах, и необходимость принудительного обновления кеша из админки, если скажем вы сделали что-то, что потребует новых ссылок на старых страницах.
Первая проблема решается путем создания грамотного индекса (логичнее всего его делать по url конечно), и при частых обновлениях - второй на (url, timed). Второй проблемы можно избежать, если использовать не полное, а частичное кеширование страницы. Но тут уже идет баланс между пользой кеша и гибкостью наполнения.
P.S.Если речь идет про сайт в подписи - то на самом деле работает живенько, но вот у сервера время отклика че то великовато. Можт конечно это только у меня.
Нет сайт news45.ru пытаюсь уменьшить время генерации страницы по максимуму. Блоки новости выводят по тематикам, каждый из них кешируются отдельно. Щас попробую ваши варианты, позже отпишусь.
Нет сайт news45.ru пытаюсь уменьшить время генерации страницы по максимуму
Да он у вас просто летает!!! Серьезно... Очень шустрый сайт. Даже я бы сказал - один из самых быстрых сайтов, которые я когда-либо видел....
Респект!
Нет сайт news45.ru пытаюсь уменьшить время генерации страницы по максимуму. Блоки новости выводят по тематикам, каждый из них кешируются отдельно. Щас попробую ваши варианты, позже отпишусь.
PG.t : 0.32 | DB.q : 7 | DB.t : 0.11
Я так понимаю что первое - это время генерации страницы, а не Postgress =)
Для страницы в 80 килобайт - очень неплохой показатель. Можно еще над запросами поколдовать наверное
а не Postgress
было бы оригинально 0.32 запроса к БД :)
По-моему, тут случай, когда можно пока что ничего не делать. А когда возникнут проблемы, то искать узкое место.
`url`='".$_SERVER['REQUEST_URI']."'"
Экранировать всё же стоит :)
И я думаю от греха подальше лучше хранить md5-хэш, а не request_uri, а на столбец положить индекс на первые 5-8 символов.