Каков наилучший способ обработки обновлений на веб-сайте электронной коммерции? - PullRequest
4 голосов
/ 27 ноября 2010

У меня есть сайт электронной коммерции (Magento), который я скоро опубликую. Моя текущая настройка состоит из сайта разработки, подготовки и производства, каждый из которых имеет свою собственную базу данных. Легко перейти от разработки к подготовке, но как быть с подготовкой к жизни, когда постоянно создаются новые клиенты и заказы? Должен ли я пойти по маршруту Apple и опубликовать сообщение «Инвентаризация обновляется». Есть идеи?

Спасибо

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

Ответы [ 3 ]

2 голосов
/ 27 ноября 2010

Magento уже имеет Режим обслуживания , если вам это нужно. Подробнее об этом здесь .

Как правило, все ваши изменения, вероятно, будут настраиваемыми модулями, и каждый модуль имеет свою собственную версию и набор применимых сценариев установки / обновления. Всякий раз, когда вы увеличиваете номер версии в файле config.xml модуля, Magento автоматически находит и запускает соответствующий скрипт обновления. Если все изменения вашей базы данных сделаны с помощью этого скрипта, вам не о чем беспокоиться.
Таким образом, я ожидаю, что мои промежуточные сайты будут работать, и очень редко мне нужно будет вносить какие-либо другие изменения в админку, за исключением таких вещей, как настройка ссылок в контенте CMS. Я никогда не копирую данные напрямую из промежуточной базы данных.
Подробнее об этом здесь .

1 голос
/ 27 ноября 2010

В этом случае у вас должен быть план обновления, в какое время и даты разрешены обновления, и во время режима обслуживания обновления / обновления должен быть включен правильный HTTP-заголовок 503 Service Unavailable, чтобы поисковые пауки / боты могли понять, что ситуация временная.

способ отображения режима обслуживания зависит от вас.Я бы предложил переписать правило для перенаправления всех запросов, которые не от ip разработчиков, для перенаправления на страницу обслуживания.Таким образом, вы все еще можете использовать и выполнять обновления или изменения настроек самостоятельно, в то время как другие видят страницу обслуживания

1 голос
/ 27 ноября 2010

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

Другим способом было бы запланировать задание cron (или просто подождать до 12:00 и сделать это вручную), чтобы загрузить / изменить все, что вы хотите загрузить / изменить.

Я не могу на самом делеПодумайте о чем-нибудь еще прямо сейчас - есть ли у magento способ отключить обновление во время обновления?

Спасибо,

Джеймс

...