Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[PHPNW2017] Smart, Scalable Content Distribution

84cfe0e14cd3fdf8d1b2ef8223d99619?s=47 Georgiana Gligor
September 30, 2017

[PHPNW2017] Smart, Scalable Content Distribution

Separating data from functionality is one of the tricks to speedier applications, since it allows accessing the right content at the right time. Partitioning data cleverly presents several challenges that I have overcome on several different projects, and it requires a combination of architecture, DevOps, development, and testing skills that is pretty unique. Unless you have such a Swiss Army knife on your team (and are not afraid of the bus factor), you’ll want to come listen to how I do it.

I share a solution to content snapshotting, distribution, and caching in a silo-based architecture involving tens of machines, walking you through the problems encountered and solutions I came up with. You’ll leave knowing how to automate content distribution on individual nodes and warm up caches, all while keeping your website permanently online.


Georgiana Gligor

September 30, 2017

More Decks by Georgiana Gligor

Other Decks in Technology


  1. TNBSU- TDBMBCMF DPOUFOU EJTUSJCVUJPO Georgiana Gligor / Tekkie Consulting /

  2. 2 Hfpshjbnb Hmjhps ✤ Geek. Mother. Do-er. ✤ Crafting enterprise

    apps ✤ Large-Scale Application Architect ✤ RomaniaPHP organiser ✤ PhD Student in Systems Engineering @gbtekkie gb@tekkie.ro
  3. @gbtekkie PHPNW2017 3 awareness interest decision action NBSLFUJOH GVOOFM

  4. @gbtekkie PHPNW2017 4 OPU BEESFTTJOH UPEBZ CMS comparison criteria content

    delivery networks CMS team roles
  5. @gbtekkie PHPNW2017 5 BHFOEB content complexity content distribution high availability


  7. 7 What business are you in? ✤ Collaboration ✤ Transactional

    ✤ Media property ✤ SaaS application
  8. None
  9. @gbtekkie PHPNW2017 9 DBQUVSJOH DPOUFOU pen & paper structured data

    non-structured digital documents DATA VERSIONING
  10. @gbtekkie PHPNW2017 10 FYQPTJOH DPOUFOU SCALING CONSISTENCY structured structured APIs

    non-structured user interface public-facing UI SECURITY
  11. @gbtekkie PHPNW2017 11 UZQJDBM NPEFSO OFFET collaboration UI transactional UI

    internal UI APIs digital files content pen & paper internal UI YOUR CONTROL media UI SaaS services APIs content 3RD
  12. @gbtekkie PHPNW2017 12 UZQJDBM NPEFSO OFFET collaboration UI transactional UI

    digital files content pen & paper media UI
  13. @gbtekkie PHPNW2017 13 QVU DPOUFOU GJSTU transactional UI collaboration UI

    digital files content pen & paper media UI
  14. 14 Tpguxbsf jnevtusz jt cvjmu bspvne bnujdjqbujnh dibnhf/


  16. @gbtekkie PHPNW2017 16 USBOTBDUJPOBM DPOUFOU pricing technicalities availability media infrequently

    frequently rarely very rarely
  17. @gbtekkie PHPNW2017 DPMMBCPSBUJPO DPOUFOU Q & A reviews customer content

    demand spikes demand spikes demand spikes 17
  18. @gbtekkie PHPNW2017 18 CMS UI DMBTTJDBM NJTUBLF content customer-facing CMS

  19. @gbtekkie PHPNW2017 19 DNT UP DBQUVSF DPOUFOU ? customer-facing content

    CMS codebase CMS UI
  20. @gbtekkie PHPNW2017 20 CMS UI content CMS codebase DNT UP

    DBQUVSF DPOUFOU ? customer-facing
  21. @gbtekkie PHPNW2017 21 import import DPOUFOU OPSNBMJTBUJPO

  22. @gbtekkie PHPNW2017 22 DPOUFOU OPSNBMJTBUJPO import import different data structure

  23. @gbtekkie PHPNW2017 23 content import APIs mix & match import

    mix & match 4SE QBSUZ DPOUFOU 3rd party
  24. @gbtekkie PHPNW2017 24 content import APIs mix & match import

    mix & match CMS UI resolve data conflicts 3rd party DPOUFOU OPSNBMJTBUJPO
  25. @gbtekkie PHPNW2017 25 content QBSUJUJPOJOH rarely frequently

  26. @gbtekkie PHPNW2017 26 content rarely frequently DPOUFOU BT DPEF

  27. @gbtekkie PHPNW2017 27 content DPOUFOU BT DPEF rarely frequently

  28. @gbtekkie PHPNW2017 28 rarely frequently TJOHMF.TJMP BSDIJUFDUVSF CMS UI content

    CMS codebase customer-facing
  29. @gbtekkie PHPNW2017 29 rarely frequently customer-facing EJTUSJCVUJPO QSPDFTT CMS UI

    content CMS codebase

  31. @gbtekkie PHPNW2017 31 2 3 EVENTUAL CONSISTENCY

  32. @gbtekkie PHPNW2017 CONTENT SOURCES 32 customer-facing transactional non-transactional EJTUJODU DPOTJTUFODZ

  33. @gbtekkie PHPNW2017 33 end-to-end functionality customer-facing TJMP CMS UI content

    CMS codebase
  34. @gbtekkie PHPNW2017 34 variation 1 customer-facing TJMPT variation 2 CMS

    UI content CMS codebase
  35. @gbtekkie PHPNW2017 35 AWS customer-facing private cloud NVMUJ . DMPVE

    CMS UI content CMS codebase
  36. ‹#› RVFTUJPOT@ HFPSHJBOB HMJHPS } Efficient architecture. Performance oriented. gb@tekkie.ro