За последние 24 часа нас посетили 50073 программиста и 1758 роботов. Сейчас ищут 999 программистов ...

Live Update

Тема в разделе "Прочие вопросы по PHP", создана пользователем xELos, 8 сен 2009.

  1. xELos

    xELos Активный пользователь

    С нами с:
    7 сен 2009
    Сообщения:
    5
    Симпатии:
    0
    Интересный вопрос. Механизм обнавления на-лету. Без доступа администратора к файловой системе и субд.
    Ни разу не встречал такого механизма. Кроме обнавления, данна система может позиционироватся как система управления модулями и плагинами и живым скачиваванием и установкой с офф сайта.
    Пишу комерчискую цмс и рассматриваю разработку подобной систмы.
    Я представляю её так.
    1) Запрос на один из корневых серверов, используя разнообразные методы - socket, fopen, curl и утилиты ос, например wget и т. д.
    В запросе мы передаём название продукта, версию и т. д.
    Использавание своего "языка" запросов например
    Код (Text):
    1. update-1 ;версия языка запросов
    2. get last ;Команда на запрос последней версии
    2) Обработка ответа от сервера, например
    Код (Text):
    1. update-1
    2. comment "Обнавление" ;Коментарий
    3. pack "http://site/update/packs/product/version.arch" ;Ссылка на обнавление
    3) Скачиваем обнавление
    4) Распаковываем или не распаковываем, берем все прямо из архива
    5) Выполняем код из архива, например "version.arch/update.php"
    5.1) Манипуляции с БД
    5.2) Копируем файлы из архива
    Например копируем все из "version.arch/update/" в корень нашего сайта
    5.3.) Делаем что-то еще ... ))
    6) Выводим сообщение что все прошло успешно, или сообщение об ошибке.

    Делал ли кто-то из вас что-то подобное и как вы видите реализацию подобного механизма ?
     
  2. mark1983

    mark1983 Активный пользователь

    С нами с:
    23 июл 2006
    Сообщения:
    7
    Симпатии:
    0
    Когда пишут комерчискую цмс там обнавления не делают )))
     
  3. kostyl

    kostyl Guest

    та ты чё, да неужели? Иди броди, тролль!
     
  4. Koc

    Koc Активный пользователь

    С нами с:
    3 мар 2008
    Сообщения:
    2.253
    Симпатии:
    0
    Адрес:
    \Ukraine\Dnepropetrovsk
    ага, а если нужно править шаблоны? Умный апдейтер сам поправит и переверстает их?
     
  5. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    xELos, я делал в два шага: скачиваем файл с md5 файлов, сверяемся, докачиваем нужное, сверяемся, до/перекачиваем, сверяемся, кидаем пользователя на файл update.php (грубо говоря), заставляем его жать кнопку (ибо кошерно). Реализация "живого" апдейта есть у движка e2 Ильи Бирмана. Но там весь движок впихнут в один файл поэтому ему проще.

    Koc, ну, если есть шаблонизатор, например, с ББ-подобными переменными и изменилось имя той или иной переменной, то обновить шаблоны не сложно даже если силой проставлять права на запись и позже возвращать. Тут важно не упереться в safe mode. Но вообще шаблоны люди меняют сами. В этом нет ничего дурного. Они так и так бы их меняли, если обновление коснулось шаблонов. В "живом" обновление главное то, что пользователю не приходится возиться с шайтан-файлами с расширением php. :)
     
  6. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    - хрень
     
  7. sorteros

    sorteros Активный пользователь

    С нами с:
    28 авг 2009
    Сообщения:
    54
    Симпатии:
    0
    kostyl, ты смешон.
     
  8. kostyl

    kostyl Guest

    Еще один, чупакабрик. Аргументировать надо, товарищ!
     
  9. phpbidlo

    phpbidlo Активный пользователь

    С нами с:
    18 авг 2009
    Сообщения:
    49
    Симпатии:
    0
  10. Koc

    Koc Активный пользователь

    С нами с:
    3 мар 2008
    Сообщения:
    2.253
    Симпатии:
    0
    Адрес:
    \Ukraine\Dnepropetrovsk
    нужно просто хостить сайты где-то у себя. Ну не отпускать далеко пользователей своего продукта. И в случае необходимости (внимание! только если это действительно требуется, а не просто потому что вышла новая версия) самостоятельно обновить ему ее.

    И пропадают все возможные проблемы с наглым копированием вашего продукта.
     
  11. Fduch

    Fduch Активный пользователь

    С нами с:
    1 июл 2009
    Сообщения:
    140
    Симпатии:
    0
    Можно апдейты продавать. Обычно так и делают. Обновления "на лету" - ну только если ошибки свои исправить "шоб заказчик не узнал". А больше зачем еще дарить заказчику обновления?
     
  12. kostyl

    kostyl Guest

    Fduch
    можно все что угодно делать, и делать обновления и продавать и на шару отдавать, кто как хочет так и дрочит.
     
  13. Koc

    Koc Активный пользователь

    С нами с:
    3 мар 2008
    Сообщения:
    2.253
    Симпатии:
    0
    Адрес:
    \Ukraine\Dnepropetrovsk
    быть может он имел в виду обнавления как таковые?
     
  14. Frozen

    Frozen Активный пользователь

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    это ваще нах русский язык? писец просто
     
  15. kostyl

    kostyl Guest

    это ты про что?