Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: worker_rlimit_nofile
Про LRU и прочие алгоритмы, основанные на частотном анализе, все понятно.
Вопрос в том, что делает linux, когда ему нужно считать с диска кусок
данных, равный 10% кеша, а в кеше места нет. Думаю, определяется самый
"бесмысленный объект" в кеше, его удаляют, на его место пишут новый.
Эм, LRU, NUR, LFU, FIFO - это как раз и есть базовые методы замещения
данных в кэшах. Если они понятны - то это для вас не должно быть
вопросом. Ибо некоторая им подобная реализация и используется.
Возможно, можно сделать чтение без кэширования - но тут я не уверен и
этого утверждать не берусь....
При интенсивном чтении и маленьком кеше нет шансов кому-то задержаться
в кеше надолго.
Тем самым, кеш малополезен в данном случае.
А тут никогда кэш бы и не стал полезен. Все кэши по своей сути
оптимизуют время доступа к данным, но лишь в том случае, когда запросы
на эти данные повторяются, т.е. можно выделить некоторое рабочее
множество данных, к которым чаще всего обращаются. При полностью же
хаотичном обращении к данным эффекта никакого, очевидно, не
будет...ну, не считая кэширования блоков(~ сектор диска?) - будет
небольшой толк при двух запросах данных из одного блока...Но
вероятность этого при чтении с жесткого диска невелика, думается :)
За сим конец оффтопа, больше не буду :)
--
---
Nazarov Paul, BMSTU
|