function is_valid_email($email)
{
// checks for a valid email format
return preg_match('#^[a-z0-9.!\#$%&\'*+-/=?^_`{|}~]+@([0-9.]+|([^\s\'"<>@,;]+\.+[a-z]{2,6}))$#si', $email);
}
копнуть булку означает копнуть булку.
vapetrov, дак ядро, а не апач. 2.6.18 это уже считается старым. еще, может быть, датацентр не поленится прошить новый биос и тогда произойдет обновление микрокода процессора.
Теоретически неправильная обработка процессоров с HT может вызвать такой глюк. для HT выгодно нагружать сначала физические процессоры, а потом гипертредные. Конкретно в этой модели процессора HT нет, но это не значит что планировщик работает абсолютно безглючно
Скомилируйте самый последний самосбор для проверки.
Pilat, но в nginx при соединениях к бекенду не работает все равно. что тут распинаться.
так это счетчик просмотров на файлах? Я думал вся затея ради кеширования данных не имеющих "бухгалтерского" значения. rename тут не подходит.
Все же, серьезные сайты используют файлы чаще с целью быстрого доступа к данным - кеширования , а не в качестве основного хранилища. Немного дико такое видеть в наше время.
Так я про видео-файл. Впрочем, раз эта точка в секундах а не в байтах, то видео должно быть подготовлено получается
flowplayer должен работать http://flowplayer.org/documentation/configuration/clips.html
start integer 0 The time (in seconds) at which playback should commence. This is only supported when you have a streaming server.
пишут что и сервер должен уметь и видео должно быть подготовлено для перемотки.
хотя не очень понятно почему так, ведь достаточно URL знать для правильного старта.
Видимо, это вы о ситуации когда два процесса внезапно и одновременно решают обновить кеш.
Конечно, они поочередно отработают с flock, но ведь это же кеш. Там информация будет отличаться ненамного. По сравнению с общей сложностью flock, для вебсайтов я бы все равно выбрал бы rename.
Путаете с реляционными базами данных.
Отсутствие синхронизации всегда быстрее. Неужели не очевидно.
В nginx можно только для самых нагруженных сайтов пустить статику мимо апача. А с остальными не возиться. Проксирование должно тоже помочь.
давайте:
flock нужно вызывать каждый раз при обычном чтении, а атомарное переименование позволяет вообще не париться ни с какими вызовами. Этого мало?
Переименование позволяет в любой момент времени иметь копию кеша доступную для чтения, даже если в данный момент кеш перестраивается. При эксклюзивных блокировках все "читатели" ждут окончания блокировки записи и возможно длительного построения кеша(по крайней мере в вашей реализации). Чем больше программы расходуют времени на ожидание, тем больше ресурсов они задерживают. В масштабе сервера получается больший расход ресурсов.
Вообще-то я надеялся что вы вспомните еще какие-нибудь минусы переименования, помимо привязки этого метода к unix.