Форум → Программирование → PHP для идиотов → Система обновления сайта
Система обновления сайта
-
народ.
смотрите задача: система обновления сайта.
требуется обновлять: файлы, бд, хтаккесс по требованию, доступы, настройки сайта, шаблоны выборочно(создавать новые), переименование файлов и папок, удаление их и тп
как бы вы такое обновление сайта на клиентской стороне организовали?
думаю о xml файле обновления которое содержит ссылки на части обновления, либо само содержит обновления упакованные если таковое позволяет размер файла обновления
свн не катит)) ибо это не то.
вопрос - как такое организовать, может кто нить думал уже о этом? вот как вордпресс приблизительно делает, только я уверен что там опять пиздецки хуевый код и все влоб ебаный сделано :(
артедооо ты послед время рассуждаешь, предлагаю рассудить и тут :))Сапожник без сапог -
20 мая 2009 г. 17:37, спустя 9 минут 58 секунд
думаю о xml файле
мне кажется на этом стоит остановить свой выбор -
20 мая 2009 г. 17:38, спустя 1 минуту 11 секунд
в smf так же сделано вродедумаю о xml файле
мне кажется на этом стоит остановить свой выборвсе умрут, а я изумруд -
20 мая 2009 г. 17:39, спустя 38 секунд
это минимум, а структура и тп. кто нить делал системы подобные? просто надо учесть изменение бд, то есть должна уметь создавать таблицы, добавлять удалять ключи и тп, вставлять записи, хотя я может конечно просто зря боюсь вначале, не начав)думаю о xml файле
мне кажется на этом стоит остановить свой выборСапожник без сапог -
20 мая 2009 г. 17:45, спустя 6 минут 12 секунд
helldude, XML может нести в себе данные любой сложности(я думаю ты это и сам прекрасно знаешь) + в пхп есть хороший механизм для разбора XML.
не морочь себе голову, XML должен лишь принести информацию о том что и на что надо поменять.то есть должна уметь создавать таблицы, добавлять удалять ключи и тп
а это пусть делает какойто класс апдейтер -
20 мая 2009 г. 17:48, спустя 3 минуты 20 секунд
ну понятно что апдейтер будет классом))))
helldude, XML может нести в себе данные любой сложности(я думаю ты это и сам прекрасно знаешь) + в пхп есть хороший механизм для разбора XML.
не морочь себе голову, XML должен лишь принести информацию о том что и на что надо поменять.то есть должна уметь создавать таблицы, добавлять удалять ключи и тп
а это пусть делает какойто класс апдейтерСапожник без сапог -
20 мая 2009 г. 23:37, спустя 5 часов 48 минут 54 секунды
ничего оригинального в голову не приходит.
- обратиться к "серверу обновлений" с запросом. в запросе указать текущую версию (дату последнего накаченного обновления)
- сервер возвращает описатель разницы, пускай в xml. не пох ли в каком формате? можно в виде сериализованного массива php - ведь стопудов мы будем из массива в xml конвертировать а потом обратно. но xml — это мооодно. давайте через xml.
- по этой структуре забрать обновленные файлы с сервера
- применить их на рабочий сервер, поправить номер текущей версии
весь фокус в том как обеспечить цельность всей этой "транзакции"?ιιlllιlllι унц-унц -
20 мая 2009 г. 23:39, спустя 2 минуты 17 секунд
artoodetoo, мож задрачивать поблочно и проверят чек-суммы? -
20 мая 2009 г. 23:51, спустя 12 минут 3 секунды
закачивать надо конечно не сразу на рабочее место, а во временный буфер.
проверить соответствие (чексуммы) файлов в буфере
начало транзакции
заблокировать обращения к сайту (maintenance mode = on)
скопировать файлы из буфера на место, накатить изменения в базу
поправить id версии
разблокировать обращения к сайту (maintenance mode = off)
конец транзакции
если внутри транзакции что-то обломалось нам надо отменить все изменения целиком. в БД есть такие механизмы, а как это обеспечить для файлов непонятноιιlllιlllι унц-унц -
20 мая 2009 г. 23:55, спустя 3 минуты 24 секунды
…а как это обеспечить для файлов непонятно…
Делать временный c допиской "_Old". старые файлы класть новые, в случае возрата убираем "_Old" и твозращаем старые файлы -
21 мая 2009 г. 7:13, спустя 7 часов 18 минут 40 секунд
artoodetoo, на самом деле и для бд не совсем ясно, ибо я не предпочитаю иннодб базы, а транзакции мускуля доступны только в них. использую майисам таблицы почти всегда, поэтому и с бд неясно)))
а файловые транзакции ололо )))) там то уж точно пздцСапожник без сапог -
-
21 мая 2009 г. 7:52, спустя 38 минут 41 секунду
сразу вопрос. кто нить тестировал майисам и иннодб на стрессоустойчивость и локи на апдейты и инсерты и тп? сейчас вот снова читаю и все пишут что иннодб лучше майисама даже по скорости … раньше писали в корне наоборот, вопрос - чему верить?
artoodetoo, на самом деле и для бд не совсем ясно, ибо я не предпочитаю иннодб базы, а транзакции мускуля доступны только в них. использую майисам таблицы почти всегда, поэтому и с бд неясно)))
а файловые транзакции ололо )))) там то уж точно пздцСапожник без сапог -
21 мая 2009 г. 8:47, спустя 54 минуты 39 секунд
вроде как на РЕАЛЬНО БОЛЬШИХ таблицах иннодб выигрывает по скорости, а на скромных майисам.
у меня такая инфа, х.з. откуда.ιιlllιlllι унц-унц -
21 мая 2009 г. 9:16, спустя 29 минут 20 секунд
с этим соглашусь, но так же до кучи. НА РЕАЛЬНО БОЛЬШИХ выигрывает все-таки постгре ))))))))))
вроде как на РЕАЛЬНО БОЛЬШИХ таблицах иннодб выигрывает по скорости, а на скромных майисам.
у меня такая инфа, х.з. откуда.
мне интересны плюсы и минусы сторон: транзакции для меня не принципиально.
вопрос краха таблиц + локи и тп как вы думаете это хуево?Сапожник без сапог
Пожалуйста, авторизуйтесь, чтобы написать комментарий!