Это довольно стандартная практика для настольных приложений для самообновления. На Mac каждая не-Apple-программа, которая использует Sparkle в моей книге, - это мгновенная победа. Для разработчиков Windows, this has already been discussed at length. Я еще не нашел информацию о самообновляющихся веб-приложениях, и надеюсь, что вы сможете помочь.Каковы лучшие практики для самообновления PHP + MySQL-приложений?
Я создаю веб-приложение, предназначенное для установки как Wordpress или Drupal - разархивируйте его в директорию, нажми на какую-то страницу установки, и она готова к работе. Чтобы иметь широкую совместимость с сервером, меня попросили использовать PHP и MySQL - это MP? В любом случае он должен быть широко-кросс-платформенным. Для контекста это в основном унифицированное приложение для веб-сообщений для малого бизнеса. Это не другая платформа CMS, подумайте о веб-почте.
Я хочу знать о самообновляющихся веб-приложениях. Прежде всего, (1) это плохая идея? Начиная с Wordpress 2.7, автоматическое обновление - это единственная кнопка, которая кажется легкой, и все же я могу представить себе так много способов, которые это могло бы пойти ужасно, ужасно неправильно. Кроме того, разве идея не в том, что веб-файлы могут быть перезаписаны веб-процессом в виде дыры в безопасности?
(2) Стоит ли время разработки? Вероятно, в мире есть миллионы установок WP, поэтому, вероятно, стоит потратить время, чтобы команда WP упростилась, экономя миллионы человеко-часов по всему миру. Я могу только представить несколько тысяч установок моего программного обеспечения - строит самообеспечение, которое стоит времени на инвестиции, или я могу предположить, что пользователи, достаточно усложненные для загрузки и установки веб-программного обеспечения, в первую очередь, могут пройти контрольный список обновлений?
Если это не катастрофа безопасности или трата времени, то (3) Я ищу предложения от тех, кто сделал это раньше. Вы сохраняете таблицу версий в своей базе данных? Как вы управляете обновлениями БД? Какой метод вы используете для отката частичного обновления в контексте самообновляющегося веб-приложения? С помощью слоя ORM стало проще или сложнее? Вы держите дельту изменений в версии, или вы просто каждый раз взрываете все это?
Я ценю ваши мысли по этому поводу.
большой вопрос. Я думаю, что самообслуживание не только сокращает время установки, но и дает вам возможность исправлять распространенные проблемы безопасности на лету. поэтому многие приложения с открытым исходным кодом получают массовую эксплуатацию после обнаружения дыры в безопасности. но вы правы, есть так много вещей, которые могут пойти не так. что, если пользователь настраивает свой код для одного? – dqhendricks
Я попросил [аналогичный вопрос] (http://stackoverflow.com/questions/558535/should-a-web-app-have-automatic-updates) некоторое время назад, что может быть полезно. – VirtuosiMedia