Да, я выше написал, что конкретно этот пример здесь не очень подходит, т.к. обращения всё-равно остаются. Буду выбирать примеры понагляднее, обещаю! =)
Перед использованием flock() необходимо получить дескриптор файла, например с помощью fopen() — это обращение к диску. Зачем? У абстрактного race condition =) (пример из статьи не очень подходит) в критической части операций с файлами может не быть вообще, и добавлять сюда файловую систему (да, операционка много что закеширует, но тем не менее) — лишняя трата ресурсов.
Да, рассматривался, мемкеш — отличный выбор, если понимать его плюсы и минусы по сравнению с данными способами: если мемкеш на отдельном сервере, а все скрипты крутятся на другом, то это лишние сетевые издержки.
Здесь я просто хотел показать альтернативные мемкешу варианты, т.к. на хабре не нашёл упоминаний таких решений.
Возможно вы правы, но я вот как-то не могу связать «зарабатывание денег» и «профессионализм»: если я зарабатываю программированием хорошие деньги, это совсем не значит что я профессионал; и наоборот — если я не получаю денег от разработки, я не недоучка. И понятия «профессия» и «профессионализм», как мне думается, не так сильно связаны, как кажется на првый взгляд.
> программирование – это мое не основное занятие и не самое интересное для меня
Сопоставьте вместе с заголовком статьи: «Кто я: профессионал или недоучка?», учитывая что "… программирование – это мое не основное занятие и не самое интересное для меня". Разве можно быть профессионалом в том, что неинтересно?
Я понимаю, когда моя бабушка может не прочитать договор или поверить в рекламу в газете. Но когда молодой человек подписывает юридические документы не читая, думая «вот уж эта то компания точно даёт бесплатный сыр», — мне не понять.
Собираясь что-то купить, первое правило: позвоните, попросите скинуть договор на почту. Или придите, попросите распечатать. Любая причина (точнее так: ЛЮБАЯ ПРИЧИНА) по которой вам не дали заранее ознакомиться с договором — основание идти туда, где дадут. А перед подписыванием договора — ещё раз перечитать.
Зато сделает запрос к серверу, который примет куки и вернет страничку со вставленной сессией в hidden-поле. Сессию достаём и выполняем основной запрос.
1: $this->canUseApc() -true
2: $this->canUseApc() -true
2: apc_add('some_key', 1)
2: unlink($filename);
2: apc_delete('some_key');
1: apc_add('some_key', 1)
скорее вот так:
1: $this->canUseApc() -true
2: $this->canUseApc() -true
2: apc_add('some_key', 1) -true
1: apc_add('some_key', 1) -false
2: unlink($filename);
2: apc_delete('some_key');
1: return;
а второй — замечание верное, sem_remove($sem); надо вынести из условия
Здесь я просто хотел показать альтернативные мемкешу варианты, т.к. на хабре не нашёл упоминаний таких решений.
Сопоставьте вместе с заголовком статьи: «Кто я: профессионал или недоучка?», учитывая что "… программирование – это мое не основное занятие и не самое интересное для меня". Разве можно быть профессионалом в том, что неинтересно?
По-моему, ответ очевиден.
Собираясь что-то купить, первое правило: позвоните, попросите скинуть договор на почту. Или придите, попросите распечатать. Любая причина (точнее так: ЛЮБАЯ ПРИЧИНА) по которой вам не дали заранее ознакомиться с договором — основание идти туда, где дадут. А перед подписыванием договора — ещё раз перечитать.
И время «5 минут назад» сделать плавающим, желательно с совпадением времени работы магазина, чтобы не заподозрили подвох в 5 утра =)