it-swarm-eu.dev

Máte nějaké účinné strategie pro spuštění verze v2 WP stránky?

Můj tým a já pracujeme s klientem, který má existující WordPress stránky s poměrně trochu obsahu a vlastní téma, které postavili. Je to skupinový blog, což znamená, že má několik bloggerů po celém světě, kteří neustále přidávají a upravují obsah.

Naším úkolem je vytvořit zcela nové téma s několika novými funkcemi. Některé z těchto funkcí budou vyžadovat nové vlastní widgety, pluginy a databázová pole.

Momentálně pracujeme na vlastních vývojových strojích a integrujeme je do jediného vývojového serveru. Veškerý kód je verzován v SVN. Naše jmenovaná DBA ručně spojuje všechny změny databáze do dev DB právě teď, ačkoli doufejme, že to bude brzy schopen automatizovat.

Právě jsme začali mluvit o procesu výroby. Význam: jakmile budeme hotovi, jak hladce a bez jakýchkoli narušení dostaneme celý náš vlastní kód na produkční (živý) server?

Máme na mysli několik plánů, ale ráda bych slyšela, jak se s tímto problémem vypořádali i jiní. Existují nějaké osvědčené postupy, které by se měly dodržovat nebo známé úskalí vyhnout?

12
Mike Lee

Pokud budete postupovat podle doporučení společnosti SethMerrick, můžete výrazně zkrátit dobu přepínání snížením TTL na příslušných záznamech DNS na 5 minut nebo více hodin (v závislosti na tom, co je aktuální TTL) před změnou adresy IP.

Tímto způsobem oznamujete vzdáleným serverům DNS, aby adresu pouze ukládali na 5 minut. Jakmile změníte IP, můžete zvětšit TTL na to, co bylo dříve. Chcete-li efekt dále minimalizovat, proveďte přepnutí během období nízké dopravy.

4
Aaron Terry

Nejsem si jistý, zda je to použitelné, ale právě jsem prošel podobným procesem simultánní migrace a modernizace webu s vysokou návštěvností.

Základní strategií bylo pracovat na inscenačním serveru, pak když bylo vše připraveno, udělejte na živém serveru výpis mysql, importujte ho na pracovní server, proveďte požadované vyčištění, pak nasměrujte záznamy DNS na pracovní server, což způsobí staging server, aby se stal novým živým serverem.

Záludný bit je pak sloučit všechna data, která se hromadí během šíření DNS do pracovního serveru (který je nyní živý server). Jinými slovy, pokud 30 hodin přechází mezi okamžikem, kdy provádíte DNS záznam a aktualizujete DNS a když je šíření DNS dokončeno, budete muset selektivně sloučit 30 hodin záznamů ze starého webu do nového.

Není to bezproblémový proces, ale v době, kdy jsme se dostali týden po silnici, se všechny zlomy vyhladily.

2
SethMerrick

@ Mike Lee: Velká otázka a jeden z posvátných grálů WordPressu (nebo některého z mainstreamových open-source CMS, o nichž v té věci znám, jako je Drupal, Joomla, et al.)

I když to určitě neznamená, že byste se měli zabývat případem použití, zaškrtněte odpověď na související otázku , která popisuje plugin na úrovni beta, který jsem právě zpřístupnil prostřednictvím WordPress Odpovědi Exchange volal WP Migrovat Webhosts (ano, jsem sát, pokud jde o kreativní jmenování).

Ale také chci vyřešit případ použití, který popisujete pomocí pluginu a v současné době přemýšlím o tom, jak toho dosáhnout. Přemýšlím, jak se k němu přiblížit, je to vzdát se při jeho řešení obecným způsobem a místo toho řešit známé vzory, které existují ve WordPressu, a pak umožnit komukoli jinému " hook " můj plugin pro zvláštní případy použití. Já také přemýšlím, že přístup je serializovat data a struktury ve WordPressu jako data v souboru PHP tak, aby budoucí plugin mohl aplikovat tyto změny jako delta, stejně jako systém řízení zdrojového kódu aplikuje delty, aby dorazil v aktuální verzi zdrojového kódu.

Takže i když neodpovídám na váš problém nebo ho neřeším v plném rozsahu, doufám, že vám dávám nějaké dobré jídlo k zamyšlení a také doufám, že vy nebo někdo jiný budete chtít spolupracovat na případném řešení.

2
MikeSchinkel