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

Performante Web-Apps [de]

Performante Web-Apps [de]

... mit Varnish & Co - getITtogether Feb. 2014 Berlin - 15min Talk; gekürzte Online Version.

6e15b56fcb16fae0747810827be8ce8f?s=128

Christoph Lühr

February 26, 2014
Tweet

Transcript

  1. Performante Web Apps mit Varnish & Co. Christoph Lühr /

    @chluehr getITtogether - Berlin 2014
  2. Christoph Lühr Head of Development

  3. basilicom SEIT 2000

  4. Image source: http://www.flickr.com/photos/ethanlindsey/321225525/ CC BY 2.0

  5. DEV

  6. None
  7. (#) Internet

  8. None
  9. Unicode Character 'HAPPY PERSON RAISING ONE HAND' (U+1F64B)

  10. 1 2 3

  11. Performante Web-Apps

  12. statisch dynamisch

  13. Performance ➊ ➋ ➌

  14. Transfer-Rate

  15. Transfer-Rate

  16. Latenz

  17. RENDER C NETWORK D

  18. X

  19. X

  20. x Faktoren

  21. CPU RAM HDD NETZ

  22. CPU RAM HDD NETZ

  23. t

  24. t

  25. CPU RAM HDD NETZ

  26. R A M

  27. R A M

  28. CPU RAM HDD LAN = IO

  29. IO

  30. IO

  31. RAM SSD WAN HDD LAN 0.05 μs 5 μs x100

    x100 50 μs x1.000 x10 5000 μs x100.000 x100 500000 μs x10.000.000 x100
  32. IO

  33. CACHE

  34. None
  35. IO Queue + Worker

  36. t

  37. statisch dynamisch

  38. statisch dynamisch

  39. None
  40. Reverse- Proxy

  41. Varnish

  42. Varnish

  43. Varnish

  44. Varnish

  45. None
  46. None
  47. Multiple Backends

  48. Varnish

  49. Varnish

  50. Varnish

  51. Varnish

  52. Varnish

  53. Varnish

  54. Partielles Caching Edge Side Inc.

  55. Varnish

  56. Varnish

  57. FUBAR? Nachteile

  58. • Content++ = RAM++ Hardwareanforderungen • !SSL Workaround: Pound Offloader

    • Purge / Warm-Up Management • Konfiguration VCL
  59. Ratiopharm? Alternativen

  60. None
  61. CDN Content Delivery Network

  62. Fallstudie / Beispiel Adventskalender

  63. None
  64. None
  65. None
  66. None
  67. App Größe 2.6 MB

  68. HTTP Requests 16 Req/App

  69. None
  70. None
  71. js js js js js js js js js js

    js js
  72. Ladezeit bei >6 Mbit 1-3 s

  73. None
  74. Transferrate ~300 Mbit/s

  75. Peak Transfer (max.) ( ~4000 Mbit/s )

  76. Transfervolumen / Top-H ~500 GB

  77. HTTP Zugriffe 260 Req/s

  78. System: Eine VM. (Varnish, Pound, Apache/PHP)

  79. None
  80. None
  81. None
  82. CPU RAM HDD NETZ CPU RAM HDD NETZ CPU RAM

    HDD NETZ
  83. None
  84. Christoph Lühr email: christoph.luehr@basilicom.de twitter: @chluehr web: http://basilicom.de ! ?

    basilicom