Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> автоматическое обновление файлов системы, с другого хоста по ftp или другому канал 
:(
    Опции темы
americanets
Дата 12.1.2007, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1100
Регистрация: 27.9.2006

Репутация: 1
Всего: 12



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


--------------------
Пусть популярную музыку слушают те, среди кого она популярна
PM   Вверх
Farik
Дата 12.1.2007, 11:49 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 1.2.2005

Репутация: нет
Всего: 1



В зависимости от необходимости делать откат(то есть новый билд "не приживается на сервере" и необходимо вернуться к последней работающей версии) есть два решения:

1. БЕЗ отката, очень простой: version.php на сервере апдейтов возвращяет только номер текущий билда. В случае, если билд на клиентском сервере не соответсвует - пользователь может нажать на кнопочку, которая качает и распаковывает архив с новой версией скрипта поверх старой. В самом скрипте жёстко зашита его версия, то есть он точно знает, какую цифру должен вернуть version.php.

2. С откатом, поддержкой частичного апдейта(модульности)

а. Пробегаемся по всем файлам скрипта, сохраняем в БД хеши файлов.
б. Пробегаемся по хешам файлов, генерим суммарный хеш билда.
в. Запрашиваем хеш билда с сервера, если совпадает, то с радостью отвечаем, что версия последняя, если нет - то идём дальше.
г. Запрашиваем полную карту хешей с сервера, сравниваем со своими хешами файлов.
д. Запрашиваем у сервера "патч" с файлами, отличающимися от наших. В случае модульной структуры(потребуется генерить не только хеши файлов и билда, но и хеши модулей в отдельности) можем спросить у пользователя, какие новые модули из списка он хочет скачать или какие модули из списка он хочет обновить. Естетсвенно на сервере может храниться детальная инфомация о конкретных модулях и их апдейтах.
е. Генерим бекап с файлами, отличными от серверных.
ж. Распаковываем патч поверх существующего скрипта.
з. В случае необходимости откатываемся к одному из бекапов(в случае если есть необходимость откатиться более чем на один бекап придётся писать механизм, позволяющий определить очерёдность восстановления бекапов)


Это сообщение отредактировал(а) Farik - 12.1.2007, 11:51
PM MAIL   Вверх
americanets
Дата 12.1.2007, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1100
Регистрация: 27.9.2006

Репутация: 1
Всего: 12



ушол думать smile 


--------------------
Пусть популярную музыку слушают те, среди кого она популярна
PM   Вверх
Mal Hack
Дата 12.1.2007, 12:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Для CMS - лишнее. Лучше заказчикам письмо с текстом отсылать.
PM ICQ   Вверх
awers
Дата 12.1.2007, 12:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: нет
Всего: 31



а почему собстно лишнее? думаю это было-бы правилом хорошего тона, предаставить клиенту updates pack как к обыкновенной софтине... 
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 12.1.2007, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Это ИМХО, возможно что я просто привык не видеть такой фишки...
Она вроде как была в IPB, но к примеру в админку я туда редко захожу.
PM ICQ   Вверх
Nicholas_S
Дата 13.1.2007, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 12.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 19



Мы реализовали в своей системе метод, похожий на тот, что предложил Farik.
Обновления делаются в полностью автоматическом режиме (с некоторой интерактивностью), с возможностью отката и выводом прогресса/статистики и др. Очень удобно и приятно.
Пришлось решить ряд проблем, но пока все тип-топ. Единственная существующая задача - это пересечение с поддержкой многосайтовости у одной копии системы. Решаем в данный момент.


--------------------
...все в мире относительно
PM   Вверх
Diesel Draft
Дата 18.1.2007, 05:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



Мне кажется, это зависит от движка. Самый простой способ обновления это качаешь пакет обновления, пакуешь старую версию (бекап), удаляешь старый скрипт и ставишь новый. Но здесь проблема совместимости. Ну, например, изменилась БД. Другой способ это качать по маске.  Например, есть система на сервере, откуда качают, которая вычисляет какие файлы, изменились, и дает список, также скрипт который переделает БД или настройки уже на месте. При этом можно использовать поэтапную установку (версия1 – версия2 – версия3 - …). Этот вариант долгий но надежней, при этом навряд ли у кого то будет сильно отличатся версия, разве что пиратская


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Mal Hack
Дата 18.1.2007, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Это - плохой вариант. А шаблоны, дизайн, как правило настраиваются под себя..
Мне в этом плане нравится политика IPB, они апдейты - показывают: что где добавить, что где заменить.

Вариант обновленя файлов - отчасти хорош, но файлы ядра системы и модулей должны полностью быть независимы от шаблонов, плюс, должна быть четкая иерархия версий.
PM ICQ   Вверх
Nicholas_S
Дата 18.1.2007, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 12.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 19



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


--------------------
...все в мире относительно
PM   Вверх
Diesel Draft
Дата 18.1.2007, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: нет
Всего: 5



А как обстроена ваша ЦМС?


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Nicholas_S
Дата 18.1.2007, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 12.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 19



Diesel Draft, что есть "обстроена"? Если имеется ввиду архитектурное построение системы, то, увы, не могу рассказать об этом. По крайней мере в ближайшее время.
Есть конкретный вопрос - задавай.  smile 


--------------------
...все в мире относительно
PM   Вверх
Digo
Дата 8.3.2009, 01:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 194
Регистрация: 30.9.2004
Где: Ростов на Дону

Репутация: нет
Всего: нет



Интересная тема сейчас сам думаю над этой проблемой... пока только не пойму как безопасно передавать файлы с сервера обновлений на конкретный обновляющийся сервер... по ftp тогда надо знать пароли сервера. У юмлы мне нравилась система обновлений там скачивался архив в нем были файлы php, sql базы и xml файл с инструкциями если пересылать такой архив на сервер и там распаковывать и обновлять...
--------------------
640кб оперативной памяти хватит миру по самые уши (Билл Гейтс )
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.0514 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.