ФорумПрограммированиеPHP для идиотов → Код восстановления после ошибки

Код восстановления после ошибки

  • malaba

    Сообщения: 165 Репутация: N Группа: Кто попало

    Spritz 19 августа 2010 г. 17:40, спустя 6 часов 56 минут 40 секунд

    с другого форума дали такой ответ:

    1) договариваемся о файле-семафоре
    2) блокируем файл-семафор
    3) копируем файл с данными
    4) обрабатываем
    5) записываем
    6) при фейле убиваем оригинал и заменяем копией
    7) снимаем блокировку с семафора

    но,блин он тоже не подходит, потому как если надо работать не с одним файйлом а с 10 и обновлять их не за один процесс
    то ткаих файлов-семафоров надо тоже с десяток


    интересно это проблема кого нить кроме меня волнует…. или шанс что процесс пройдет все шаги а собъется только после очистки файла ничтожно мал и парюсь только я)))
  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz 19 августа 2010 г. 17:42, спустя 2 минуты 12 секунд

    а что ты пишешь в файл? мб можно обойтись и бд…
    Высокоуровневое абстрактное говно
  • Givi

    Сообщения: 2284 Репутация: N Группа: Адекваты

    Spritz 19 августа 2010 г. 17:46, спустя 4 минуты 2 секунды

    malaba, если у тебя будет настолько много одновременных запросов к файлам, что простая блокировка файла тут не подходит, то значит использование файлов тут тоже в целом не подходит. Для своего же удобства юзай БД. Ну или в памяти держи все записи. Это что-то по типу твиттера (пока сам до конца не понял как у них там все организовано, но по рассказу моего руководителя они очень удобную шнягу юзают для своих целей).
  • malaba

    Сообщения: 165 Репутация: N Группа: Кто попало

    Spritz 19 августа 2010 г. 18:28, спустя 41 минуту 47 секунд

    ну пару дней еще помучаюсь, потуплю и если не найду решение, то буду работать тогда с БД,
    тока вот морального удовлетворения не получу))))

    буду думать)
  • malaba

    Сообщения: 165 Репутация: N Группа: Кто попало

    Spritz 21 августа 2010 г. 15:55, спустя 1 день 21 час 27 минут

    решил


    атомарное замещение файла )))

Пожалуйста, авторизуйтесь, чтобы написать комментарий!