Installare / script di aggiornamento - Possono eseguire più volte quando più utenti stanno colpendo il sito prima sono fatto?

magento.stackexchange https://magento.stackexchange.com/questions/3078

  •  16-10-2019
  •  | 
  •  

Domanda

Abbiamo un paio di aggiornamenti che vorremmo eseguire per mezzo di script di aggiornamento di un modulo. Uno di loro dura circa 5 minuti per completare.

Il problema che non siamo sicuri circa è che il sito è molto attivo.

Così, quando spingiamo lo script di aggiornamento per la produzione, come intende comportarsi?

Sarà lo script di aggiornamento continuo essere eseguito più volte quando le persone stanno colpendo il sito fino a quando un'istanza di esso è finalmente completo?

Magento abbastanza intelligente da solo eseguire un'istanza di esso (anche se non è ancora completato e le altre persone stanno colpendo il sito)?

Siamo sulla Magento EE 1.9.

È stato utile?

Soluzione

In teoria, sì. Ho visto script di aggiornamento eseguire più volte -. Che è il motivo per cui qualsiasi script di aggiornamento creo che i carichi CMS, EAV o altre informazioni attributo di solito è codificato per salvaguardia contro l'inserimento multiplo

Best Practice:

L'uso di SSH, eseguire il seguente dal vostro principale del documento Magento:

touch maintenance.flag

Questo creerà un file chiamato 'maintenance.flag' nella root Magento che effettivamente tirare il tuo negozio non in linea durante l'aggiornamento. 5 minuti di inattività dovrebbe essere relativamente sicuro se si esegue in off-peak o di ore durante la notte.

Aggiorna il tuo Magento Store di esecuzione di un aggiornamento / tiro dalla cassa controllo del codice sorgente o tramite il vostro metodo preferito di distribuzione. Per eseguire l'aggiornamento è possibile emettere:

php index.php - ancora una volta dalla radice del documento. Questo darà il via l'aggiornamento.

È possibile consentire Regalati un accesso alla parte di CMS (se non è piuttosto esegue lo script di aggiornamento da soli tramite SSH) implementando una soluzione alternativa index.php (leggi: hack) che consente l'accesso specifici indirizzi IP saltando il controllo delle operazioni di manutenzione File .flag:

$ip = $_SERVER['REMOTE_ADDR'];

$allowed = array('1.1.1.1','2.2.2.2'); // these are the IP's allowed

E sostituire questa riga:

if (file_exists($maintenanceFile)) {

con questa linea:

if (file_exists($maintenanceFile) && !in_array($ip, $allowed)) { 

Fonte: http://inchoo.net/ecommerce/magento/maintenance-mode-in- magento /

In breve, ripresa per ripulire esecuzioni multiple dell'aggiornamento potenzialmente causare più i tempi di inattività che se avessi appena preso il negozio giù per cominciare. Organizza il tuo manutenzione e praticarla nel proprio ambiente di staging molte volte prima di eseguire l'aggiornamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top