Развертывание веб-приложений и несколько версий

Мне любопытно узнать, как другие разработчики справляются с управлением версиями веб-приложений и развертыванием разных версий. Основная проблема заключается в том, что кто-то может использовать ваше веб-приложение при развертывании новой версии, и в этот момент Javascript и т. Д., Которых у них нет, клиентская сторона устарела.

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

Итак, я вижу пару способов решения этой проблемы:

  1. Отображать на сайте уведомление «Обновление» при развертывании новой версии.

  2. Отметьте версию на стороне клиента и отклоните любую отправку новой версии из старых источников на стороне клиента. Достаточно справедливо, но на самом деле это не идет рука об руку с непрерывным развертыванием.

  3. Непрерывная миграция БД - одновременное выполнение нескольких версий приложения (миграция пользователей на новую версию, если это возможно). Это потребовало бы каких-либо обновлений в старой схеме БД для «прямого переноса» в новую схему. Кажется наиболее привлекательным для развертывания, но также может быть ужасно сложным.

  4. Где-то посередине всех трех.

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

8
задан Allan Jardine 8 February 2012 в 11:06
поделиться