Your SlideShare is downloading. ×
0
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Globo.com & Varnish
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Globo.com & Varnish

4,441

Published on

0 Comments
16 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,441
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
16
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. HTTP accelerator Cachos 2.0 Luis Henrique Okama Tollef Fog Heen Mario Carvalho
  • 2. What is the problem? GET / HTTP/1.1 Hang on, I need to look up a few hundred things in my database and then do a lot of editing controlled by a scripting language HEAD / HTTP/1.1 Hang on, I need to look up a few hundred things in my database and then do a lot of editing controlled by a scripting language, and then I will throw the result away.
  • 3. Why are CMS-es slow? Complex content generation process Single database prevents clustering Expensive software ditto This means: we need server side caching
  • 4. Why are the existing solutions not good enough? Squid, ancient design, forward proxy Apache, not what it's built for, not what it's good at Akamai (and similar), expensive, vendor lock-in
  • 5. What is Varnish? Dedicated HTTP accelerator Focus on server-side speedups Policy control High performance Varnish Configuration Language Shared memory log
  • 6. High performance 11 syscalls + 7 locks for a cache hit Work with the OS, not against it. Multi-CPU, multi-core 64 bit Use advanced OS features: Accept filters madvise(MADV_RANDOM) kqueue, epoll Don't copy data if you don't have to Use workspaces, not malloc/free Compiled configuration
  • 7. Policy control Override TTLs Add, remove or change headers Strip cookies Rewrite URLs Invalidate objects in the cache
  • 8. Varnish Configuration Language Simple domain specific language Compiled via C language to binary Transparently! Dynamically loaded Multiple configs loaded concurrently Instant switch from one VCL to another. Can be done from VCL
  • 9. VCL Example acl some_acl { "10.0.0.0/8" } if (client.ip ~ some_acl) { pass; } if (req.http.host ~ "foo.com$") { set req.http.host = regsub(req.http.host, "foo.com", "bar.org"); } if (obj.valid) { set obj.ttl = 10m; deliver; }
  • 10. Shared memory logfile Fast Custom log tailers varnishtop varnishlog varnishhist varnishncsa varnishstat
  • 11. Globo.com cache infrastructure
  • 12. Comparative scalability setup time cost open source throughput physical space
  • 13. Comparative scalability setup time cost open source throughput physical space
  • 14. Comparative scalability setup time cost open source throughput physical space
  • 15. Comparative scalability setup time cost open source throughput physical space
  • 16. Comparative scalability setup time cost open source throughput physical space
  • 17. Comparative scalability setup time cost open source throughput physical space
  • 18. Comparative scalability setup time cost open source throughput physical space
  • 19. Some data
  • 20. Conclusion software customization work set
  • 21. Real life performance
  • 22. Questions
  • 23. Contacts Luis H. Okama okama@corp.globo.com (www.globo.com) Mario Carvalho mariocar@corp.globo.com (www.globo.com) Tollef Fog Heen tfheen@redpill-linpro.com (www.varnish-cache.com) @ Stand Globo.com

×