PHP - что быстрее, memcache или требуется? - PullRequest
3 голосов
/ 05 июня 2010

Я пытаюсь загрузить предварительно определенные сообщения электронной почты для отправки - мой вопрос заключается в том, должен ли я запоминать все сообщения электронной почты, а не просто включать файл, содержащий переменные с сообщениями электронной почты, и вызывать его только один раз день или что-то?

Ответы [ 2 ]

5 голосов
/ 05 июня 2010

Memcache удобен для большого количества чтений в отдельных процессах / запросах, отправляете ли вы с большим количеством различных процессов или в пакете? В последнем случае забудьте memcache.

Локальное включение довольно быстро, и если вы часто обращаетесь к файлу, ваша ОС даже кеширует файл для вас, эффективно считывая его из памяти. Невозможно определить без тестирования, но я думаю, что наибольшее увеличение скорости будет иметь файл в кеше кода операции (например, APC): собственный формат и в памяти.

Опять же, я был бы удивлен, если бы файл включал узкое место в вашем коде, особенно если вы отправляете почту. Помните о правиле оптимизации №1: не решайте несуществующие проблемы с производительностью.

2 голосов
/ 05 июня 2010

Ну, это ОЧЕНЬ сложный вопрос. На карту поставлено много переменных.

Много ли запросов на эти данные (когда я много говорю, я имею в виду больше, чем один или два в секунду)? Memcache получил бы очко, если бы это было так ...

Являются ли ваши диски высокопроизводительными (SCSI или SAS, RAID 0 или 10)? Если это так, файлы МОГУТ получить очко.

У вас много оперативной памяти? Если это так, ОС может кэшировать больше файловых данных, поэтому для файла потребуется меньшая активность диска.

У вас есть много предопределенных сообщений? Если это так, индекс Memcache может иметь значение ...

Ваш сервер Memcache ТОЛЬКО на локальном хосте? В противном случае Memcache потеряет балл за задержку в сети.

Суть в следующем. Если вы не выполняете TON поисков (много в секунду), любой из них будет таким же быстрым (в пределах разумного, от 10 до 20 мс). Лично, если вы не выполняете более 10 поисков по электронной почте в секунду, используйте метод file. Его проще обслуживать (вам не нужно беспокоиться об обновлении Memcache, если он нуждается в перезапуске), и его будет легче отлаживать. Помни: будь проще ...

...