ФорумПрограммированиеPHP для идиотов → Система обновления сайта

Система обновления сайта

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 6:27

    народ.

    смотрите задача: система обновления сайта.

    требуется обновлять: файлы, бд, хтаккесс по требованию, доступы, настройки сайта, шаблоны выборочно(создавать новые), переименование файлов и папок, удаление их и тп

    как бы вы такое обновление сайта на клиентской стороне организовали?

    думаю о xml файле обновления которое содержит ссылки на части обновления, либо само содержит обновления упакованные если таковое позволяет размер файла обновления

    свн не катит)) ибо это не то.

    вопрос - как такое организовать, может кто нить думал уже о этом? вот как вордпресс приблизительно делает, только я уверен что там опять пиздецки хуевый код и все влоб ебаный сделано :(

    артедооо ты послед время рассуждаешь, предлагаю рассудить и тут :))
    Сапожник без сапог
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 6:37, спустя 9 минут 58 секунд

    думаю о xml файле

    мне кажется на этом стоит остановить свой выбор
  • md5

    Сообщения: 11954 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 6:38, спустя 1 минуту 11 секунд


    думаю о xml файле

    мне кажется на этом стоит остановить свой выбор
    в smf так же сделано вроде
    все умрут, а я изумруд
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 6:39, спустя 38 секунд


    думаю о xml файле

    мне кажется на этом стоит остановить свой выбор
    это минимум, а структура и тп. кто нить делал системы подобные? просто надо учесть изменение бд, то есть должна уметь создавать таблицы, добавлять удалять ключи и тп, вставлять записи, хотя я может конечно просто зря боюсь вначале, не начав)
    Сапожник без сапог
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 6:45, спустя 6 минут 12 секунд

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

    а это пусть делает какойто класс апдейтер
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 6:48, спустя 3 минуты 20 секунд


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

    а это пусть делает какойто класс апдейтер
    ну понятно что апдейтер будет классом))))
    Сапожник без сапог
  • artoodetoo

    Сообщения: 5146 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 12:37, спустя 5 часов 48 минут 54 секунды

    ничего оригинального в голову не приходит.

    - обратиться к "серверу обновлений" с запросом. в запросе указать текущую версию (дату последнего накаченного обновления)
    - сервер возвращает описатель разницы, пускай в xml. не пох ли в каком формате? можно в виде сериализованного массива php - ведь стопудов мы будем из массива в xml конвертировать а потом обратно. но xml — это мооодно. давайте через xml.
    - по этой структуре забрать обновленные файлы с сервера
    - применить их на рабочий сервер, поправить номер текущей версии

    весь фокус в том как обеспечить цельность всей этой "транзакции"?
    ιιlllιlllι унц-унц
  • Baboot

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

    Spritz 20 мая 2009 г. 12:39, спустя 2 минуты 17 секунд

    artoodetoo, мож задрачивать поблочно и проверят чек-суммы?
  • artoodetoo

    Сообщения: 5146 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 12:51, спустя 12 минут 3 секунды

    закачивать надо конечно не сразу на рабочее место, а во временный буфер.


    проверить соответствие (чексуммы) файлов в буфере
    начало транзакции
     заблокировать обращения к сайту (maintenance mode = on)
     скопировать файлы из буфера на место, накатить изменения в базу
     поправить id версии
    разблокировать обращения к сайту (maintenance mode = off)
    конец транзакции


    если внутри транзакции что-то обломалось нам надо отменить все изменения целиком. в БД есть такие механизмы, а как это обеспечить для файлов непонятно
    ιιlllιlllι унц-унц
  • Baboot

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

    Spritz 20 мая 2009 г. 12:55, спустя 3 минуты 24 секунды



    …а как это обеспечить для файлов непонятно…

    Делать временный c допиской "_Old". старые файлы класть новые, в случае возрата убираем "_Old" и твозращаем старые файлы
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 20:13, спустя 7 часов 18 минут 40 секунд

    artoodetoo, на самом деле и для бд не совсем ясно, ибо я не предпочитаю иннодб базы, а транзакции мускуля доступны только в них. использую майисам таблицы почти всегда, поэтому и с бд неясно)))

    а файловые транзакции ололо )))) там то уж точно пздц
    Сапожник без сапог
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 20:14, спустя 9 секунд

    зы 5225
    Сапожник без сапог
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 20:52, спустя 38 минут 41 секунду


    artoodetoo, на самом деле и для бд не совсем ясно, ибо я не предпочитаю иннодб базы, а транзакции мускуля доступны только в них. использую майисам таблицы почти всегда, поэтому и с бд неясно)))

    а файловые транзакции ололо )))) там то уж точно пздц
    сразу вопрос. кто нить тестировал майисам и иннодб на стрессоустойчивость и локи на апдейты и инсерты и тп? сейчас вот снова читаю и все пишут что иннодб лучше майисама даже по скорости … раньше писали в корне наоборот, вопрос - чему верить?
    Сапожник без сапог
  • artoodetoo

    Сообщения: 5146 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 21:47, спустя 54 минуты 39 секунд

    вроде как на РЕАЛЬНО БОЛЬШИХ таблицах иннодб выигрывает по скорости, а на скромных майисам.
    у меня такая инфа, х.з. откуда.
    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 мая 2009 г. 22:16, спустя 29 минут 20 секунд


    вроде как на РЕАЛЬНО БОЛЬШИХ таблицах иннодб выигрывает по скорости, а на скромных майисам.
    у меня такая инфа, х.з. откуда.
    с этим соглашусь, но так же до кучи. НА РЕАЛЬНО БОЛЬШИХ выигрывает все-таки постгре ))))))))))

    мне интересны плюсы и минусы сторон: транзакции для меня не принципиально.

    вопрос краха таблиц + локи и тп как вы думаете это хуево?
    Сапожник без сапог

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