- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Ситуация такая.
Есть один процесс писатель (больше одного в единицу времени не будет), и есть много читателей. Будут ли какие не то проблемы если в момент записи кто то решит почитать?
Т.е. надо ли в такой ситуации ставить блокировки?
Т.е. надо ли в такой ситуации ставить блокировки?
желательно :)
писателю то нет, а вот читатели "каааку" прочитают :)
если не под виндой и на пыхе, надо при записи. кроме этого, у читающих должна быть проверка на блокировку.
Пиши во временный файл, а потом
а чем sql не устроил?) сейчас хостинги любой ценовой категории предоставляют бд
Пиши во временный файл, а потом
Что то я не понял как это использовать. У меня есть файл с данными (и он один) читатели его читают, а писатель читает очищает, добавляет в считаное и снова пишет в файл. Пока решил использовать просто flock с LOCK_EX - для писателя и LOCK_SH для читателей.
Но буду признателен если опишете подробнее логику того как это реализовать с помощью переименования файлов.
Что то я не понял как это использовать. У меня есть файл с данными (и он один) читатели его читают, а писатель читает очищает, добавляет в считаное и снова пишет в файл. Пока решил использовать просто flock с LOCK_EX - для писателя и LOCK_SH для читателей.
Но буду признателен если опишете подробнее логику того как это реализовать с помощью переименования файлов.
Ну смотри. Основная проблема твоя в том, что процесс записи в файл длительный. И при записи "читающий" процесс получит вместо контента фигню. Если даже не длительный процесс, но тем не менее, проблема та же.
Допустим, есть файл tags_cloud.txt, в который ты по cron-у пишешь облако тэгов, исходя из выборки в mysql. У меня, например, это весьма трудоемкий процесс.
Итак, твой скрипт, который запускается автоматически (или вручную), выглядит примерно так:
Хотя у меня реализовано несколько иначе. Скрипт пишет в stdout через echo. А сам php-скрипт вызывается sh-скриптом, который после выполнение php-скрипта просто переименовывает его вывод в рабочий файл.
Если не понятно, пиши. Можно в ЛС.