ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Система автоматического обновления
  #1  
Старый 18.05.2008, 21:23
Аватар для PiNzit
PiNzit
Познающий
Регистрация: 15.01.2008
Сообщений: 78
Провел на форуме:
189620

Репутация: 26
По умолчанию Система автоматического обновления

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

из требований:
1) проверка наличия обновлений на удаленном сервере
2) получение списка файлов которые необходимо обновить (у разных клиентов набор файлов может различаться)
3) прием обновленных файлов (вот тут особенно интересует ваше мнение - каким протоколом пользоваться)
4) проверка целостности и в случае необходимости перезакачка
5) бекап старых файлов и подмена их новыми
 
Ответить с цитированием

  #2  
Старый 18.05.2008, 21:38
Аватар для Хозяин
Хозяин
Постоянный
Регистрация: 15.03.2006
Сообщений: 600
Провел на форуме:
5091304

Репутация: 1203


По умолчанию

Да хоть по http

Примитивно:
Апдейтер обращается к файлу на сервер, если файл пустой - обновления не требуются, если нет, требуются.

Допустим файл будет содержать ссылку на закачку и md5 сумму закачиваемого файла.

примерно так:

http://site.ru/update/prog.exe:md5

Апдейтер качает, сверяет сумму, если не сходится докачивать. Для разных версий, пусть парсит разные файлы на сервере

Бэкап старых файлов и запись новых отдельным процессом при перезапуске программы

Последний раз редактировалось AciD_FreaK; 18.05.2008 в 21:43..
 
Ответить с цитированием

  #3  
Старый 18.05.2008, 21:54
Аватар для PiNzit
PiNzit
Познающий
Регистрация: 15.01.2008
Сообщений: 78
Провел на форуме:
189620

Репутация: 26
По умолчанию

это php приложение, проверка обновления предполагается не через cron а при заходе администратором в панель управления и начало закачки по его команде => гипотетически может получится, что клиент Х долгое время не посещающий панель управления будет вынужден обновляться с версии 1 на версию 3, так как провафлил обновление до 2 => тут надо как-то п умному придумать контроль версий, тем более что у разных клиентов список файлов может различаться (у кого-то установлены специальные уникальные плагины)
 
Ответить с цитированием

  #4  
Старый 18.05.2008, 22:08
Аватар для Хозяин
Хозяин
Постоянный
Регистрация: 15.03.2006
Сообщений: 600
Провел на форуме:
5091304

Репутация: 1203


По умолчанию

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

А принцип апдейта один и тот же в принципе, разницы нет, пхп или нет. И крон тут не нужен, не будет же каждый клиент себе крон настраивать.

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

  #5  
Старый 18.05.2008, 22:59
Аватар для PiNzit
PiNzit
Познающий
Регистрация: 15.01.2008
Сообщений: 78
Провел на форуме:
189620

Репутация: 26
По умолчанию

на счет крона согласен, потому сразу от него отказался, а вот касательно пропуска апдейта и разных списков этот вопрос всееще открыт
 
Ответить с цитированием

  #6  
Старый 18.05.2008, 23:09
Аватар для zer0ska
zer0ska
Участник форума
Регистрация: 05.12.2007
Сообщений: 113
Провел на форуме:
252598

Репутация: 34
По умолчанию

Все это можно осушиствить на том же пхп.
Но вот проблеммма с конфигами как их обновлять ? все парсить ?
 
Ответить с цитированием

  #7  
Старый 18.05.2008, 23:29
Аватар для PiNzit
PiNzit
Познающий
Регистрация: 15.01.2008
Сообщений: 78
Провел на форуме:
189620

Репутация: 26
По умолчанию

ну да это все и предполагается писать на пхп, а на счет конфигов - все настройки храню в БД
 
Ответить с цитированием

  #8  
Старый 19.05.2008, 00:13
Аватар для Isis
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

При каждом запуске программы чекать файл http://file.ru/update/version.ini
Где пишется версия новой проги..если не сходится с существующей, выполнять действия описанные выше
 
Ответить с цитированием

  #9  
Старый 19.05.2008, 00:16
Аватар для PiNzit
PiNzit
Познающий
Регистрация: 15.01.2008
Сообщений: 78
Провел на форуме:
189620

Репутация: 26
По умолчанию

Isis это уже обсуждалось, открытые вопросы
1) как выполнять обновление через версию (предполагаю что стоит хранить инфу о всех версиях и последовательно обновлять к лиента с 1 до 3 предварительно обновив до 2)

2) как разным клиентам выдавать разные списки файлов для обновления
 
Ответить с цитированием

  #10  
Старый 19.05.2008, 00:20
Аватар для Хозяин
Хозяин
Постоянный
Регистрация: 15.03.2006
Сообщений: 600
Провел на форуме:
5091304

Репутация: 1203


По умолчанию

version.ini пусть содержит инфу о всех версия, вот апдейтер пусть парсит его и все, выполняет нужные действия для своей версии

Последний раз редактировалось AciD_FreaK; 19.05.2008 в 00:22..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Bccms - Система Управления Контентом Сайта Ruster Разное - Покупка, продажа, обмен 16 23.11.2008 00:03
Microsoft выпустила пакет обновления SP3 для Windows XP Liar Мировые новости 22 25.04.2008 11:30



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ