10 jednoduchých způsobů, jak vydělat peníze na svém blogu [dnes]

Mám dva webové servery Amazon Linux s Amazon Load Balancer a chci používat WordPress k zobrazování obsahu pouze na kořenové úrovni dokumentu. Stránka má další podadresáře se soubory PHP, které jsou oddělené od WordPress. Problémem je snaha udržet synchronizaci souborových systémů obou serverů pro soubory WordPress, zvláště když změním plugin nebo nahraju obrázek, který ovlivňuje pouze jeden ze dvou serverů najednou.

Přesunul jsem WordPress do adresáře / public mimo kořen dokumentu a poté jsem připojil / public ze souborového systému AWS EFS. Tímto způsobem jsem mohl připojit stejný souborový systém EFS na oba webové servery.

Funguje skvěle pro synchronizaci souborů WordPress, ale je bolestně pomalý, a to jak při poskytování webových stránek prostřednictvím Apache, tak i při spouštění jakýchkoli programů příkazového řádku (například Mercurial), které přistupují k adresáři / public. Zahájení načítání stránky WordPress může trvat 3 sekundy a Mercurialu může trvat téměř minutu, než vyhledá změny v adresáři / public.

Mým prvním pokusem o urychlení bylo použití OPCache pro mezipaměť načítání souborů WordPress PHP. To fungovalo skvěle, ale nechci, aby ukládalo do mezipaměti všechny ostatní soubory PHP, které mám v jiných adresářích. OPCache má funkci černé listiny, ale myslím, že potřebuji seznam povolených, abych uložil do mezipaměti pouze adresář / public. Ale i když používám černou listinu pro všechno kromě / public, stále mám problém se skenováním Mercurial adresáře / public.

Další myšlenkou bylo použít něco podobného rsync synchronizovat adresáře / public na dvou serverech, ale zdá se, že by to bylo také pomalé, a pravděpodobně bych to musel spustit ručně pokaždé, když jsem provedl změnu ve WordPressu, která ovlivnila soubor, a možná automaticky od galerie plugin Používám obrázky v mezipaměti a zapisuji je do složky.

Existuje lepší způsob, jak to udělat? Zdá se, že by to měla být docela běžná věc.

Dík, Russell

  • 3 Podívali jste se na Lsyncd - Live Syncing (Mirror) Daemon? Bude sledovat vaše zrcadlené servery a žonglovat se změnami téměř v reálném čase ...
  • @GregNickoloff - Díky, to jsem neviděl, ale zdá se, že Lsyncd byl navržen pro synchronizaci pouze v jednom směru. V podstatě mám dva pány se stejným webem WordPress na každém serveru a sdílenou databází, ale se samostatnými souborovými systémy. Přečetl jsem si nějakou diskusi o tom, jak to použít v obou směrech, stejně jako o použití programu Mirror, na který odkazoval, který podporuje dva pány, ale byl jsem znepokojen tím, zda bych se mohl dostat do nějakého druhu závodu. Čím víc o tom přemýšlím, tím víc mě zajímá, zda by WordPress prostě neměl být používán za nástrojem pro vyrovnávání zatížení.
  • Nejsem si jistý, ale mým sklonem je, že pokud získáváte takové množství provozu, které by vyžadovalo nástroj pro vyrovnávání zatížení, pravděpodobně byste měli uvažovat o něčem robustnějším než Wordpress.
  • @GregNickoloff - to by byl dobrý předpoklad, ale ve skutečnosti ho používám na mnohem větším webu se spoustou dalších programů, které nejsou WordPress, a potřebuji nástroj pro vyrovnávání zatížení více, abych mohl mít dva servery, které mohu sundat samostatně a pro nadbytečnost než pro hustý provoz. Vlastně neočekávám tolik provozu do části WordPress, ale na těchto serverech je za nástrojem pro vyrovnávání zatížení, takže to způsobuje určité problémy.

Pracoval pro vás: Charles Robertson | Chcete nás kontaktovat?