Implementace Amazon S3 pro blogy WordPress

amazon s3 wordpress

Poznámka: Od psaní tohoto článku jsme od té doby migrovali na setrvačník s Content Delivery Network používá technologii StackPath CDN, mnohem rychlejší CDN než Amazon.378

Pokud nejste na prémiové podnikové hostitelské platformě, je obtížné dosáhnout podnikového výkonu s podobným CMS WordPress. Sdílení zátěže, zálohy, redundance, replikace a doručování obsahu nejsou levné.

Mnoho zástupců IT si prohlíží platformy jako WordPress a používá je, protože jsou uvolnit. Zdarma je relativní. Dejte WordPress na typickou hostingovou infrastrukturu a pár stovek současných uživatelů může váš web zastavit. Abych pomohl s výkonem mého blogu, tento týden jsem upravil svoji instalaci WordPressu, který tlačil veškerou grafiku z Amazon S3 (Amazon Simple Storage Service). To ponechává můj server jednoduše tlačit HTML přes PHP / MySQL.

Amazon S3 poskytuje jednoduché rozhraní webových služeb, které lze použít k ukládání a načítání jakéhokoli množství dat, kdykoli a odkudkoli na webu. Poskytuje jakémukoli vývojáři přístup ke stejné vysoce škálovatelné, spolehlivé, rychlé a levné infrastruktuře pro ukládání dat, kterou Amazon používá k provozování své vlastní globální sítě webových stránek. Cílem služby je maximalizovat výhody rozsahu a předat tyto výhody vývojářům.

Převést web pro Amazon S3 trvalo trochu práce, ale zde jsou základy:

  1. Zaregistrujte se Amazon Web Services.
  2. Načtěte doplněk Firefox pro S3. To vám poskytuje skvělé rozhraní pro správu obsahu v S3.
  3. Přidat vědro, v tomto případě jsem přidal www.martech.zone.
  4. Přidejte do svého registrátoru domén CNAME a nasměrujte subdoménu svého webu na Amazon S3 pro virtuální hostování.
  5. Stáhněte a nainstalujte si plugin WordPress pro Amazon S3.
  6. Nastavte ID přístupového klíče a tajný klíč AWS a klikněte na aktualizaci.
  7. Vyberte subdoménu / kbelík, který jste vytvořili výše pro Použijte tento kbelík nastavení.

wp-amazon-s3-settings.png

Další kroky byly zábavné! Nechtěl jsem sloužit pouze budoucí obsah ze S3, chtěl jsem sloužit veškerý obsah, včetně reklam, témat a minulých mediálních souborů.

  1. Vytvořil jsem složky pro reklamy, Témata, a obrázky v mém kbelíku na S3.
  2. Zálohoval jsem veškerý svůj aktuální obsah (obrazové a mediální soubory) do příslušných složek.
  3. Upravil jsem svůj soubor CSS v mém motivu, abych vytáhl všechny obrázky www.martech.zone/themes.
  4. Udělal jsem to Hledání a nahrazování MySQL a aktualizoval každý odkaz na mediální obsah, který se má zobrazit ze subdomény S3.
  5. Aktualizoval jsem všechny odkazy na obrázky pro reklamy, které se mají zobrazovat ze složky ads na subdoméně S3.

Od této chvíle jednoduše potřebuji nahrát média na S3, místo abych používal výchozí dialog pro nahrávání obrázků pro WordPress. Plugin dělá skvělou práci při umisťování ikony S3 na stejné místo ikon Nahrát / Vložit v administrátorovi WordPress.

Přesunutí všech dat a běh na S3 několik dní nyní vedlo k poplatkům S0.12 ve výši 3 USD, takže mě příslušné poplatky nezajímají - možná to bude stát pár dolarů měsíčně. Pozitivní je, že pokud dostanu spoustu návštěvníků, měl bych být schopen zvládnout mnohem víc než současná řešení platformy. Můj web načítá domovskou stránku asi 40% času, který to bývalo, takže jsem s tahem docela spokojený!

Nejhezčí na tomto kroku je, že ve skutečnosti nevyžadoval žádný vývoj!

28 Komentáře

  1. 1

    Dobrý den,

    Mám účet Amazon S3, ale poté, co jsem se pokusil přijít na to, jsem to nechal, protože je to příliš obtížné. Pomáhá doplněk firefox pro S3 mnohem jednodušší?

  2. 3

    Měl bych dodat, že budete muset nasměrovat svůj CNAME na nový your_unique_cloudfront_distribution_name.cloudfront.net místo do your_unique_subdomain.s3.amazonaws.com. Ale poté s ním zacházíte jako s běžným kbelíkem S3.

    Při použití možnosti CloudFront s vyšší rychlostí / nízkou latencí to stojí víc. Pokud se rozhodnete raději přepnout zpět na standardní verzi S3, jednoduše přepněte CNAME tak, aby místo toho směřoval zpět na s3.amazonaws.com.

    Asi před rokem jsem psalhttp://www.carltonbale.com/tag/amazon-s3/"a několik příspěvků na blogu na Amaon S3 pro každého, kdo má zájem.

  3. 4

    Pokud hledáte ještě větší zvýšení rychlosti, přeměňte svůj kbelík Amazon S3 na kbelík Amazon CloudFront, který vytváří skutečnou globální multi-serverovou síť pro distribuci obsahu s nízkou latencí. Zde odkaz se všemi podrobnostmi: http://aws.amazon.com/cloudfront/faqs/

    Zásuvný modul wp-supercache také může na webech s vysokým provozem výrazně zvýšit rychlost, protože výrazně snižuje zatížení procesoru a volání databáze.

    • 5

      Velmi cool, Carltone! Je to tedy hodně distribuovaná síť jako Akamai. Neuvědomil jsem si, že to mají k dispozici! Mohu využít výhodu poté, co jsem viděl některé náklady.

      Už jsem měl mezipaměť s povoleným wp, ale mám nějaký dynamický obsah, takže jsem se s tím opravdu potýkal, protože by někdy ukládal obsah do mezipaměti, který jsem vlastně chtěl načíst v reálném čase.

      • 6

        Douglas,

        Z jejich popisu to zní, jako by Amazon dělal něco úplně jiného, ​​říkají:

        „Amazon CloudFront využívá 14 okrajových míst na hlavních trzích po celém světě. Osm je ve Spojených státech (Ashburn, VA; Dallas / Fort Worth, TX; Los Angeles, CA; Miami, FL; Newark, NJ; Palo Alto, CA; Seattle, WA; St. Louis, MO). Čtyři jsou v Evropě (Amsterdam; Dublin; Frankfurt; Londýn). Dva jsou v Asii (Hongkong, Tokio). “

        V podstatě využívají výhod internetových výměn, aby využili svou blízkost ke koncovému uživateli, kde jako CDN jako Akamai mají servery mnohem blíže ke koncovému uživateli, obvykle v síti ISP.

        Amazonským způsobem je mnohem levnější a efektivnější Akamai.

        Rogerio - http://www.itjuju.com/

  4. 7

    Neřekl bych, že je obtížné „dosáhnout podnikového výkonu pomocí CMS, jako je WordPress.“

    Je to všechno o tom, jak nastavíte svou infrastrukturu nebo jak hostujete svůj CMS.
    Způsob, jakým byl kódován samotný CMS, může také hrát velkou roli v jeho výkonu, jak Carlton zdůraznil pomocí pluginu wp-supercache.

    Bylo by lepší, kdyby byla funkce pluginu wp-supercache zabudována do wordpressu od začátku - ale to by vyžadovalo přepsání frontendu. Což je co lightpress.org dělal.

    Načítání statického obsahu na něco jako S3 je dobrý způsob, jak uvolnit zpracování a doručení z hlavního serveru. Je to snadný a pohodlný způsob, jak se zapojit do infrastruktury Amazonek, abyste provedli těžké zvedání, ale jakmile dosáhnete kreténového prahu, Amazon začne být drahý a bude levnější to udělat doma a jít s CDN.

    Rogerio - http://www.itjuju.com/

    Ps
    Trochu jsem přemýšlel o této situaci, kdyby se jen 100 lidí dalo dohromady a každý měsíc přispělo cenou slušného serveru, za který by za normálních okolností platili, mohli postavit / sestavit hostingovou infrastrukturu, která by dokázala zvládnout téměř cokoli.

  5. 8

    0.12 $ za prvních pár dní služeb S3. Znovu byste se k tématu vrátili za několik měsíců a ukázali byste nějaké statistiky provozu versus náklady? Bylo by zajímavé sledovat, jak se náklady rozkládají na jedinečné návštěvníky a proti nákladům na reklamu nebo jiným vstupům.

  6. 13
  7. 14

    Amazon S3 je neuvěřitelně dobře ceněná služba. Právě jsem v procesu integrace do CMS. Jediným problémem, na který jsem narazil z hlediska vývoje, nikoli z pohledu služby Amazon, je, že pokud chcete, aby váš uživatel transparentně nahrál soubor přímo do S3 prostřednictvím POST a máte vícedílný formulář, který obsahuje text určený pro místní databáze, jsi zaseknutý. Musíte jej buď rozdělit do dvou forem, nebo zkusit nejprve pomocí souboru ajax nahrát soubor a poté při úspěchu lokálně odeslat data.

    Pokud má někdo lepší řešení, klidně mi dejte vědět: o)

    Úspora nákladů na hostování velkých souborů s vysokou návštěvností však zaručuje vývoj takového systému.

    Grant

    Systémy správy potlačujících seznamů

  8. 15

    Dobrý den,

    Skvělé sepsat. Prošel jsem, jak popisujete, ale na mém administrátorském panelu, kde nahrávám obrázky, nevidím tlačítko S3. Všiml jsem si, že moje obrázky, když se normálně nahrají na Amazon, znamená to, že nyní mohu zkopírovat všechny své stávající obrázky a odstranit je na serveru?

    A musím upravit, odkud pocházejí moje obrázky, nebo to dělá plugin?

  9. 16

    Ahoj Scott,

    Vpravo od typické ikony byste měli vidět malou ikonu databáze. To je ikona pro vyskakování okna Amazon. Přesunul jsem veškerý obsah / upload wp na Amazon a ujistil jsem se, že mám stejnou cestu ... jediným rozdílem je subdoména. Byli v http://www... a teď jsou na images.marketingtechblog.com. Poté, co jsem zkopíroval všechny obrázky na Amazon, jsem použil PHPMyAdmin a prohledal a nahradil src = ”http://martech.zone a nahradil jej src =” images.marketingtechblog.com. (https://martech.zone/wordpress/mysql-search-replace/)

    Doufám, že to pomůže! Není to bezproblémové, ale funguje to.

    Doug

  10. 17

    Ahoj Douglasi, díky za to, aktualizoval jsem DB, takže všechny obrázky ukazují na obrázky., Ale vidím, že některé z palců (při pohledu přes informace o stránce) ukazuje iamge stále na www.

    Tady je web (www.gamefreaks.co.nz) - a, alos, který má pro hlavní stránku nějaký hlavní problém s pamětí, se spustil teprve poté, co jsme přesunuli hostování, a proto se nyní dívám na uvolnění části tlaku hostování na S3. 😎

  11. 18
  12. 19
  13. 20
    • 21

      Je kompatibilní s nejnovější verzí, ale upřímně se mi nelíbí, jak to funguje - musíte přesunout a načíst všechny obrázky na S3 jiným procesem. Můžeme ve skutečnosti vytvořit robustnější integraci CDN (Content Delivery Network) s WP, která spíše synchronizuje než vyžaduje jiný proces.

  14. 22
  15. 23

    Víte, jestli to funguje i v případě „externích segmentů“? Chci to nastavit pro blog mého přítele a nechat ho použít kbelík v mém účtu AWS (již jsem pro něj vytvořil uživatelský účet a umožnil mu přístup k jednomu z mých kbelíků pomocí nástrojů Amazon IAM).

  16. 24
  17. 25
    • 26

      Celia, jdi do domu AWS http://aws.amazon.com/ a v rozevírací nabídce „Můj účet / konzole“ vyberte „Bezpečnostní pověření“. Pokud potřebujete, přihlaste se. Odtud přejděte dolů na Přístupové přihlašovací údaje a uvidíte vaše ID přístupových klíčů. Zkopírujte jeden z nich pro ID klíče pro tento plugin a poté klikněte na odkaz „Zobrazit“, abyste zobrazili delší tajný přístupový klíč. Zkopírujte to a vložte také do nastavení pluginu. Poté byste měli být připraveni!

  18. 27
  19. 28

Co si myslíte?

Tyto stránky používají Akismet k omezení spamu. Zjistěte, jak jsou vaše údaje komentářů zpracovávány.