Ответ 1
1) Если у вас есть выделенный сервер кеша, вам не нужно беспокоиться о том, сколько пространства памяти вам нужно использовать. Вы можете использовать максимальное количество свободной памяти (или близко к ней) и позволить ей делать свою магию.
2) Если сервер кэширования совпадает с вашим веб-сервером, вам нужно указать, сколько вы хотите использовать memcached (dynacache или другое). На мой взгляд, на самом деле нет идеального размера кеша. Все зависит от того, сколько памяти у вашего сервера, сколько данных вы должны положить в кеш и т.д. До тех пор, пока ваша память правильно балансирует между кешированием и веб-сервером, вы хорошо.
В этом случае у вас есть менее 100 МБ данных, которые необходимо хранить в кеше. В зависимости от того, насколько ваш сервер имеет, он очень мал, но вам всегда нужно думать, сколько там растут данные, а также вам нужно добавить дополнительные данные (например, клиенты, продукты и т.д.). Поэтому, если вы помещаете меньше, чем вам нужно, вам придется остановить службу, увеличить допустимое значение памяти и запустить службу.
Если ваш сервер обрабатывает много информации, требующей большого объема памяти, тогда вам нужно будет вычислить, сколько памяти и ресурсов эти процессы выполняются.
Быстрый пример:
- 1 Сервер (кеш и веб-сервер) с 4G общей памяти.
- Системные и процессы ресурсов, включая cronjob, базу данных и т.д.: 3G
- 60 000 клиентов в общей сложности на 100 МБ (всегда используйте больше, чем фактический размер на всякий случай).
В этом примере 1G памяти осталось (приблизительно). Не рекомендуется общая сумма, поскольку у вас будет достаточно для вашей системы. Я бы сказал, что использование 384 МБ или меньше для вашего кеша будет хорошим началом. Вы позволяете вашему кешу расти, и вы не влияете на свою системную память.
Я бы рекомендовал следить за вашим сервером, чтобы обеспечить оптимальное распределение памяти для вашей системы и вашего баланса кеша.
Вот хорошая статья об этом: http://techgurulive.com/2009/07/22/how-to-allocate-memory-within-memcached/