- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Всем привет,
Вообщем первый раз сталкиваюсь с кэшом, так как проэкт попался, достаточно большой.. нужна оптимизация, вод ниже я вам приведу код, который мне удалось найти на просторах интернета, и зачем он мне я вам тоже щас расскажу.
Из кода понятно, что время кэша, 60 секунд, и генерируемая статическая страница, создается в папке /cache, сдесь вроде все ясно.
На счет сайта.
Сайт достаточно крупных, есть ряд городов, и категорий.
Код я проверил только на главной странице сайта, результат достаточно утешителен.
Сайт работает по принципу, нажимаеш на город, выдается маин пейдж с категориями этого города, кто знает сайты обьявлений работают по тому же принципу.
Так вот, я кэш сделал именно для всех маин пейджов, городов, так как там ничего не меняется, т.е в своем городе свои категории и точка, подкатегории не кэшировал, так как там уже выдается контент.
Хотел бы у вас спросить советов, может я что то не учел ? может код не безопасен, или не верен с точки зрение оптимизации ?
Еще хотел бы спросить, если я захочу убрать кэш, мне будет достаточно убрать код, и удалить папку кэш ?, к примеру если я сделаю глобальное обновление сайта ? - допустим сменю логотип и пару категорий ?
Есть кто живой, или одни дорвейщики сидят ? 😂
Сам по себе код безопасен, одно не понятно, нахрена надо было делать циклом фор заполнить массив, чтобы потом foreach'ем пройтись и вывести значения этого массива?
или for
или http://www.php.net/manual/ru/function.array-fill.php
Можно тупо md5(адрес страницы)...
...а потом брать, например, три-четыре первых символа - это будет подпапка в папке cache.
Желательно после добавить:
flock ($cacheFile,2);
Тогда зачем для редко изменяемых страниц всего 60 секунд?
У вас изображения-js-css используемые в оформлении тоже кэшируются? Зачем?
код безопасен, чтобы обновить кеши - удалите все с папки "cache"
оптимизации тут так таковой не сделаешь, по край не мере смысла нету.
все что идет после " ob_start(); " и до "$file = fopen($cacheFile, 'w'); "
будет кешироваться, рекомендую дизайн выносить за пределы.
Не всегда такой подход применим. Допустим, если сайт с авторизацией. Для каждого юзера отображается на странице свой логин в определенном месте и т.п. Мне больше по душе идея "блочного кеширования", когда кешируется не вся страница целиком, а определенные ее "тяжелые" куски.
сталкиваюсь с кэшоем, так как проэ ект попался, достаточно большой.. водт ниже ... вам тоже щассейчас расскажу.
создается в папке /cache, сздесь вроде все ясно.
На счет сайта.
Сайт работает по принципу, нажимаешь на город, ... кто знает сайты обь ъявлений работают по тому же принципу.
сделал именно для всех маин пейджов ей, ...
Сколько же Вам лет и зачем вы взялись за достаточно большой проЭкт, не понимая что, зачем, и как кэшировать.
Кэширование на стороне сервера надо делать как сказал Joker-jar - тяжёлые участки.
Кэширование на стороне клиента - надо обрабатывать заголовки IfModifidSinse и правильно отдавать LastModified.
Для 99% сайтов достаточно грамотно написать mysql-запросы и использовать индексы.
Со "статикой" (css, картинки, ява-скрипты) отлично разберётся nginx.
PS: И не надо тупо вставлять в свои сайты куски кодов, "найденные на просторах рунета".
Можно тупо md5(адрес страницы)...
...а потом брать, например, три-четыре первых символа - это будет подпапка в папке cache.
Желательно после добавить:
flock ($cacheFile,2);
Тогда зачем для редко изменяемых страниц всего 60 секунд?
У вас изображения-js-css используемые в оформлении тоже кэшируются? Зачем?
Я сделал так, в к названию страницы кеэша, просто прикрепил название города, а городов одинаковых как бы нет, в итоге у меня в кеше получается что то типа такого
index.cityname
Время поставил на месяц ? - или стоит ставить на больше ?
Еще хочу активировать gzip компрессию -
методы.. которы описали выше (на счет mysql) и т д тоже пока что рассматриваю, буду пробовать оптимизировать (дело в том что я больше по СЕО) :)
Вообщем код - безопасен и его можно использовать поставив больше времени только на кэшерование (только городов) и все.
Еще вопрос,
Что делать с 90к постами ? они в принципе статические, то можно их кешировать или нет ? каждый день примерно по 50 постов добовляется.. - просто интересно на счет места на диске - ну или не будет ли это все дело нагружать хардиск - систему как то - ?
Просто оптимизация бд - это одно, но если статических постов много то почему бы их не кэшировать ? но как то нужно придумать что кэшировать а что нет.. и сделать это правильно, я думаю тем куском скрипта что выше пропробовать кэшировать посты, но вот как отразится это на самом пк пока не знаю -
Что посоветуете ?
"Кешировать" - понятие относительное. У вас что, посты динамические и они парсятся каждый вызове например от ббкодов? Тогда наверное есть смысл кешировать. Или речь о кеширование постов из бд на диске? Тогда вопрос - зачем? Место много? Каким образом вы собираетесь это реализовать? Какое преимущество оценили? Нет - тогда не занимайтесь ерундой.
"Кешировать" - понятие относительное. У вас что, посты динамические и они парсятся каждый вызове например от ббкодов? Тогда наверное есть смысл кешировать. Или речь о кеширование постов из бд на диске? Тогда вопрос - зачем? Место много? Каким образом вы собираетесь это реализовать? Какое преимущество оценили? Нет - тогда не занимайтесь ерундой.
1- около 80% не динамического контента выводится юзерам (это и есть те самые посты)
Получается их отображение связанно с БД - так как они оттуда генерируются.
Естесвенно я задал себе вопрос, а что если их кэшировать ? они все равно в 90% не изменяются. т.е лежат как устаревшие но тянут трафик. (то зачем их каждый раз дергать ?) Или я не прав ? В постах нет ни каких бб кодов, работа сайта такова, (это сайт обьявлений ну почти)
1 - Юзер заходит на сайт
2 - Юзер публикует статью
3 - Юзер может иногда менять параметры статьи (это редко происходит, поправка там еще что)
4 - Вообщем то и все.
Вот и хочу понять как лучше сделать так, что бы снизить нагрузку на бд, и ускорить сайт, те категории которые постоянно обновляются я не стал кэшировать ( к примеру когда мы нажимаем в меню, Рецепты, (то нам выводится по 10 шорт постов) (вот это я не стал кэшировать так как в любой момент кто то может добавить новый рецепт блюда) ну вот и все, т.е то что изменяется я не кэширию а то что статично само по себе кэширую (но главный вопрос теперь кэшировать посты или нет..) так как все они тянутся с бд