The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"А кто засунет то сраничку?"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [ Отслеживать ]

"А кто засунет то сраничку?"  +/
Сообщение от luzers on 06-Окт-09, 12:37 
в memcached кроме самого скрипта?
есть ли какие-либо "внешние" обработчики(демон?) которые обходят бэки по списку и кладут странички в кэш, что бы nginx оттуда их уже брал без обращения к бэкам?
на вскидку чтото не гуглится ничего, на костылях ездить?
переписывать скрипты - не предлагать =)

ближайший костыль - этот memproxy+wget со списком урлов. %)
может есть что-то более продвинутое и готовое решение?

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "А кто засунет то сраничку?"  +/
Сообщение от Andrey Mitrofanov on 06-Окт-09, 12:58 
>ближайший костыль - этот memproxy+wget со списком урлов. %)
>может есть что-то более продвинутое и готовое решение?

Если реальных пользователей у сайта нет, то... :) это, конечно, самое продвинутое решение.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "А кто засунет то сраничку?"  +/
Сообщение от luzers on 06-Окт-09, 13:15 
>Если реальных пользователей у сайта нет, то... :) это, конечно, самое продвинутое
>решение.

пользователи есть.
хотелось бы с упреждением популярные запросы кэшировать.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "А кто засунет то сраничку?"  +/
Сообщение от luzers on 06-Окт-09, 22:25 
>хотелось бы с упреждением популярные запросы кэшировать.

как сказано в вики опеннета, по оптимизации проекта:
Возможна организация целостного кэширвоания страниц, через связку nginx+memcached с предварительным формированием кэша на уровне приложений.

так вот, есть ли такой "внешний" инструмент по этому "предварительному формированию"?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "А кто засунет то сраничку?"  +1 +/
Сообщение от angra (ok) on 08-Окт-09, 04:42 
Одна из самых частых ошибок, это оптимизировать что-либо на основе интуиции/наития/самоуверенности/дебилизма. Одно дело когда у вас ферма из десятка однотипных серверов и вы хотите добавить туда новый, разогрев его предварительным кешированием. Другое дело, когда вы пытаетесь заранее угадать запросы пользователей на единственный сервер. Делать подобное не рекомендуется ибо бесполезно.

P.S. Если бы вы доросли до первого варианта, то подобный бы вопрос просто не возник.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "А кто засунет то сраничку?"  +/
Сообщение от luzers on 08-Окт-09, 10:09 
>Одна из самых частых ошибок, это оптимизировать что-либо на основе интуиции/наития/самоуверенности/дебилизма. Одно
>дело когда у вас ферма из десятка однотипных серверов и вы
>хотите добавить туда новый, разогрев его предварительным кешированием. Другое дело, когда
>вы пытаетесь заранее угадать запросы пользователей на единственный сервер. Делать подобное
>не рекомендуется ибо бесполезно.
>
>P.S. Если бы вы доросли до первого варианта, то подобный бы вопрос
>просто не возник.

вопрос именно в том - чтобы "разогреть" кэш перед запросами от nginx-а.
почему не воспользоваться бы сразу кэшированием от самого nginx-а или mod_accel? тем, что эти методы не позволяют контролировать кэш, т.е. в случае изменения динамики юзеру будет отдаваться старый контент. и возможности контролировать этот процесс(кэширования) - минимален. а то что лежит в мемкэше - можно и прибить и обновить своими силами (как бэком так и внешними костылями).
на счет "предугадать" то к чему обратится юзер - тут особых заморочек нет в виду аудитории и контента. контент - новости и работа. соответственно - последняя сотня новостей и последние несколько сотен вакансий-резюме.
эти обращения составляют порядка 25-30% загрузки бэков.
почему желание есть делать этот разогрев и контроль "внешними" силами а не допустим скриптами на бэках - это тем, что скрипты нужно дописывать этими функциями, это неизбежные багосы. а в случае внешнего управления кэшем - переписка минимальна, а управление - полное.

про частые ошибки, я не говорю за всех, я про свою ситуацию:
есть документ, допустим /news123.html после его формирования - он запрашивается 20к раз на дню. уточнение(правка этого документа) происходит раза три.
вопрос: зачем его каждый раз генерить на бэке, если его можно закэшировать три раза после изменений? и снизить тем самым количество запросов на бэки на 19997 запросов?
кэширования же сейчас нет ваабще никакова =) планируется последние новости-работу кэшировать в мемкэше и раздавать с фронта, остальное ("старое") кэшировать на фронтах в файлах. базы-бэки нагружать по-минимуму.
переписывать же двигло сайта не предлагать - там всё слишком заморочено. а нагрузка уже есть сейчас и сильно хочет расти =)
не спорю, что можно еще к ферме добавить два-три сервера и оне возьмут какую-то часть нагрузки, но есть желание на существующих мощностях дожать 10-20%. и пусть даже не самым прямым способом.

так вот, к чему это собственно я =) ищецца демон который поймет список урлов(файл или база), список бэков с которых эти урлы схавать, поймёт что нужно это класть в мемкэш, а так же будет иметь возможность по времени и/или же по внешнему запросу (http/rpc?) обновлять урл или урлы. если он будет уметь тэги на урлы и обновлять урлы по запросу тэга - будет ваабще здорово.

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

сорь за многабукав.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру