netwind

Рейтинг
419
Регистрация
06.05.2007

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 при соединениях к бекенду не работает все равно. что тут распинаться.

BrokenBrake:
Не, я не про кэш, у меня в файл пишутся статистические данные, неплохо бы, чтобы они были точными.

так это счетчик просмотров на файлах? Я думал вся затея ради кеширования данных не имеющих "бухгалтерского" значения. 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 знать для правильного старта.

BrokenBrake:
не вспомнил, но подумал сейчас, и вижу одну проблему: c rename теоретически может случиться так, что более старые данные перезапишут более новые. Чтобы этого не происходило, надо блокировать файл, но тогда уже и raname вроде ни к чему Возможно, я не прав, тогда объясните почему

Видимо, это вы о ситуации когда два процесса внезапно и одновременно решают обновить кеш.

Конечно, они поочередно отработают с flock, но ведь это же кеш. Там информация будет отличаться ненамного. По сравнению с общей сложностью flock, для вебсайтов я бы все равно выбрал бы rename.

BrokenBrake:
Вообще, если честно, я удивлён, что нужны эти блокировки. Я раньше почему-то был уверен, что PHP должен сам понимать, что если мы пишем файл, не нужно допускать ситуаций с его чтением в тот же момент. То есть я всерьез считал, что эти все блокировки делаются автоматически. И вот, ошибся. Но почему так?

Путаете с реляционными базами данных.


Кто нибудь может сказать, для чего может понадобиться специально чтение/запись без блокировок?

Отсутствие синхронизации всегда быстрее. Неужели не очевидно.

В nginx можно только для самых нагруженных сайтов пустить статику мимо апача. А с остальными не возиться. Проксирование должно тоже помочь.

BrokenBrake:
Ну блин. Это же техническая тема. Неужели так трудно перечислить эти минусы, если вы знаете о них? Давайте обсудим.

давайте:

flock нужно вызывать каждый раз при обычном чтении, а атомарное переименование позволяет вообще не париться ни с какими вызовами. Этого мало?

Переименование позволяет в любой момент времени иметь копию кеша доступную для чтения, даже если в данный момент кеш перестраивается. При эксклюзивных блокировках все "читатели" ждут окончания блокировки записи и возможно длительного построения кеша(по крайней мере в вашей реализации). Чем больше программы расходуют времени на ожидание, тем больше ресурсов они задерживают. В масштабе сервера получается больший расход ресурсов.

Вообще-то я надеялся что вы вспомните еще какие-нибудь минусы переименования, помимо привязки этого метода к unix.

Всего: 6293