CrewCut: если первый массив будет многомерным, то в результате будет тоже массив, который подошёл по ключу(php.net/manual/ru/function.array-intersect-key.php подробней про функцию). Тот код что я привёл, работает только по "верхнему" уровню, чтоб он искал ещё и в подмассивах, его нужно доработать, добавив рекурсивный поиск.
VitaliyStepUI: да фиг его знает, у нас например отдельно логируются все ошибочные запросы, так там 99% от таких ботов\снифферов, ищат открытые админки\дыры\и т.д. Это нормальная практика, никто даже не парится по этому поводу.
HAbRAhabp: тогда смотрите логи nginx - если там ничего, то смотрите логи php-fpm (/var/log/php-fpm.log или /var/log/php-fpm/*.log), напишите перед хелловордом display_errors("on"); error_reporting(E_ALL);
попробуйте ещё php-fpm -t в консоли, и запустить с выводом в консоль php-fpm -y /path/to/fpm.conf
MdaUZH: я указал в ответе, поглядите php.net/manual/ru/function.get-include-path.php php.net/manual/ru/function.set-include-path.php , где-нить в точке входа определяйте: set_include_path(realpath(__DIR__) . PATH_SEPARATOR . get_include_path());
и потом уже инклюдите относительно папки точки входа
MdaUZH: / в начале, означает абсолютный путь, от корня, /../ - такая конструкция может вызвать ошибку, а может просто восприняться как /, но тем не менее, подняться выше корня - нельзя.
mihelsonkk: да, именно так, конечно вероятность коллизии у CRC32 выше,чем у других алгоритмов хеширования, но в случае чего можно подобрать и другой алгоритм, тут главное принцип действий.
Денис: просто обычно большой расход базой процессорного времени - это первый признак отсутствия индексов\оптимальных настроек. То что касается poll() и т.д. - мне кажется это немного не в ту степь, возможно утилиты показывают неточные данные, на виртуальных машинах такое сплошь и рядом.
Борис Якушев: да, именно так. А разделение делается для разной обработки разных исключений. Например FileNotFoundException вам надо обработать одним способом, BadMethodCallException другим способом, а все остальные - третьим, тогда пишете так:
try{
doSomething()
}catch(FileNotFoundException $e){
//тут обработка
}catch(BadMethodCallException $e){
//тут обработка
}catch(Exception $e){
//тут остальное
}
а елси вам надо все исключения обрабатывать одинакого (например просто логировать), то тогда хватит и одного catch(Exception $e) на всех.
Nc_Soft: во первых, select id from tbl limit 10 тоже можно в кеше хранить, во вторых - нет, не кажется. при 30-40 запросах в секунду, получить данные из кеша будет быстрее. чем запрашивать их у бд.
GPK1929: да, каждую сущность можно сначала запрашивать из кеша, если её там нет - ложить её туда. Так же можно хранить в кеше айди сущностей при выборках.
Что касается размеров, то тут только эксперементальным путём подбирать. Например у меня вот так: i.imgur.com/3df90UF.png , то есть из отданных под кеш 2гб используется только ~30% .
Дмитрий: странно, по тегам я понял, что вы хотите найти наиболее используемые файлы бд, и поэтому и ответил вам, что это занятие - бесполезное.
А что касается файлов - можете попробовать ls /proc/айди_процесса/fd -l