SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Downloaden Sie, um offline zu lesen
Understanding high
performance caching
      with SSL
     DrupalCamp NJ 2013
     Saturday, 02 Feb 2013
         Princeton, NJ
Laurence Liss
Senior Developer

 drupal.org: lliss
About me
➡ Film school graduate with a mathematics degree
➡ Became a magazine writer and editor
➡ Had to get content on the Web
➡ Slid from print editorial to online
➡ Led development teams
➡ Started building sites
➡ Learned to do real programming
➡ Became interested in Drupal
➡ Fell in love with Drupal and was hired by Zivtech
What we’ll cover
• Caching basics
• Drupal Performance
• Reverse Proxy Caches
• SSL termination
• Varnish
• Pound
• Simple Demo
• Proxy vs Reverse Proxy (maybe)
Drupal is kind of slow

There I said it...
Drupal is kind of slow

Drupal gives tremendous power and
flexibility but there is always an
associated cost.

Drupal’s core systems provide layers of
caching to help.
Drupal is kind of slow
A human analogy...
A human analogy...

You’ve got an office, many files, many
clients, each with different needs.

People keep calling and asking for
information. Each request requires you
to dig around in some more papers for
an answer.
A human analogy...
Soon, you’re putting people on hold as
you service requests. Clients are getting
angry.

You’ve even gone so far as to put
common information on sticky notes but
you still need to find them when asked.
So what do you do?
Get a secretary...
Meet your secretary
Your secretary has a great memory
(much better than yours).

Answers the phone when clients call.

At first, doesn’t know anything about
the office. Bugs you a lot.
Meet your secretary
Meet your secretary
Meet your secretary
After hearing an answer to a question
can just answer the question again
the next time from memory.
A human analogy...
In this setup, you, the person in the
messy office, are Web server (Apache).

Your secretary with that brilliant
memory, that’s the reverse-proxy cache.
A real setup

Apache and PHP do the heavy lifting.

Varnish is the reverse-proxy cache.
Varnish
A reverse-proxy                                       not this
HTTP accelerator

Popular among
Drupal devs

Smart configuration,
very flexible
                                                        CC license
                      Rubber Dragon flickr.com/photos/rubberdragon/
Varnish
Standard package on many Linux variants

Custom configuration language (vcl files)

Speaks HTTP, knows HTTP, loves HTTP
Varnish

Varnish is a quick solution to improve the
responsiveness of your site for most users.

Let’s change topic for a moment.
Security is a feature
Your site is an investment.
 - time
 - money
 - resources

The trust of your users is
an asset.
                                                       CC license
                              Ice Sabre flickr.com/photos/icesabre/
Security is a feature
The Internet is a scary place.

At least we have good crypto.

Crypto doesn’t solve everything.

But it solves a lot...
                                                            CC license
                                   Ice Sabre flickr.com/photos/icesabre/
Security is a feature
SSL everywhere is worth
considering.

The overhead isn’t much
(potentially negligible on a
big Drupal site).

                                                        CC license
                               Ice Sabre flickr.com/photos/icesabre/
Back to the analogy...
We can think of HTTP and HTTPS as
two different languages.

Consider HTTP as English
and HTTPS as French.

Let’s say you want to start doing
business with French speakers.
But your secretary
    doesn’t speak French
This isn’t going to
work so well.

If all your calls are in
French she’ll be no
help at all.
Varnish
Yeah Varnish doesn’t handle SSL
termination (i.e. it doesn’t speak HTTPS)

and it’s not going to.
That’s cool.
Other things do
Pound is another reverse
proxy tool that handles SSL
termination

Somewhat lacking in
documentation and sparky
how-to guides on the Internet

                                I made this logo up
Pound
Handles load balancing

Can remove servers that fail
from rotation

Can send requests for static files
to a different physical server (or
server service like lighthttpd)
                                    I made this logo up
Pound
“Pound does not access the hard-
disk at all (except for reading the
certificate file on start, if required)
and should thus pose no security
threat to any machine.”

I liked this quote from the Pound Web site at
http://www.apsis.ch/pound
                                                I made this logo up
Pound is your
         new translator
Fluent in both French
and English

Can pass messages
from your French
callers to your brainy
secretary.
Your new office setup
Your new office setup
Requests look like this
And often like this
In reality...
In reality...
Time for a demo

Because talk is cheap...
Thank You
Do you have questions?

Weitere ähnliche Inhalte

Andere mochten auch

Moodlev3 090407140751 Phpapp02
Moodlev3 090407140751 Phpapp02Moodlev3 090407140751 Phpapp02
Moodlev3 090407140751 Phpapp02Peking
 
Introduction to process control 2015
Introduction to process control 2015Introduction to process control 2015
Introduction to process control 2015ray.mcglew
 
Supporting Digital Scholarship and Publishing at the Getty
Supporting Digital Scholarship and Publishing at the GettySupporting Digital Scholarship and Publishing at the Getty
Supporting Digital Scholarship and Publishing at the GettySusan Edwards
 
I Am Sam
I Am SamI Am Sam
I Am Samsykoyau
 
Drupal Problem-Solving Techniques
Drupal Problem-Solving TechniquesDrupal Problem-Solving Techniques
Drupal Problem-Solving TechniquesZivtech, LLC
 
Drupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt Cheney
Drupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt CheneyDrupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt Cheney
Drupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt CheneyZivtech, LLC
 
Periodic table elements
Periodic table elementsPeriodic table elements
Periodic table elementsPeking
 
Quadratic And Roots
Quadratic And RootsQuadratic And Roots
Quadratic And RootsPeking
 
science Conservation of matter - Equation balance
science Conservation of matter - Equation balancescience Conservation of matter - Equation balance
science Conservation of matter - Equation balancePeking
 

Andere mochten auch (9)

Moodlev3 090407140751 Phpapp02
Moodlev3 090407140751 Phpapp02Moodlev3 090407140751 Phpapp02
Moodlev3 090407140751 Phpapp02
 
Introduction to process control 2015
Introduction to process control 2015Introduction to process control 2015
Introduction to process control 2015
 
Supporting Digital Scholarship and Publishing at the Getty
Supporting Digital Scholarship and Publishing at the GettySupporting Digital Scholarship and Publishing at the Getty
Supporting Digital Scholarship and Publishing at the Getty
 
I Am Sam
I Am SamI Am Sam
I Am Sam
 
Drupal Problem-Solving Techniques
Drupal Problem-Solving TechniquesDrupal Problem-Solving Techniques
Drupal Problem-Solving Techniques
 
Drupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt Cheney
Drupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt CheneyDrupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt Cheney
Drupaldelphia 2014 - Mission Bicycle Case Study - Slides by Matt Cheney
 
Periodic table elements
Periodic table elementsPeriodic table elements
Periodic table elements
 
Quadratic And Roots
Quadratic And RootsQuadratic And Roots
Quadratic And Roots
 
science Conservation of matter - Equation balance
science Conservation of matter - Equation balancescience Conservation of matter - Equation balance
science Conservation of matter - Equation balance
 

Mehr von Zivtech, LLC

Shift left testing for continuous collaboration
Shift left testing for continuous collaborationShift left testing for continuous collaboration
Shift left testing for continuous collaborationZivtech, LLC
 
DrupalCon San Francisco- The State of Drupal as a Web Application & Product ...
DrupalCon San Francisco-  The State of Drupal as a Web Application & Product ...DrupalCon San Francisco-  The State of Drupal as a Web Application & Product ...
DrupalCon San Francisco- The State of Drupal as a Web Application & Product ...Zivtech, LLC
 
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation Zivtech, LLC
 
Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014
Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014
Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014Zivtech, LLC
 
The business case for contributing code
The business case for contributing codeThe business case for contributing code
The business case for contributing codeZivtech, LLC
 
Css compass sasssusy
Css   compass sasssusyCss   compass sasssusy
Css compass sasssusyZivtech, LLC
 
From a Contractor to a Shop: How to grow your Drupal business without losing ...
From a Contractor to a Shop: How to grow your Drupal business without losing ...From a Contractor to a Shop: How to grow your Drupal business without losing ...
From a Contractor to a Shop: How to grow your Drupal business without losing ...Zivtech, LLC
 
Drupal Presentation @ the Higher Education Web Symposium
Drupal Presentation @ the Higher Education Web SymposiumDrupal Presentation @ the Higher Education Web Symposium
Drupal Presentation @ the Higher Education Web SymposiumZivtech, LLC
 

Mehr von Zivtech, LLC (9)

Shift left testing for continuous collaboration
Shift left testing for continuous collaborationShift left testing for continuous collaboration
Shift left testing for continuous collaboration
 
DrupalCon San Francisco- The State of Drupal as a Web Application & Product ...
DrupalCon San Francisco-  The State of Drupal as a Web Application & Product ...DrupalCon San Francisco-  The State of Drupal as a Web Application & Product ...
DrupalCon San Francisco- The State of Drupal as a Web Application & Product ...
 
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
Probo.ci Drupal 4 Gov Devops 1/2 day Presentation
 
Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014
Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014
Open Source isn't Just Good, it's Good Business - DrupalCamp Colorado 2014
 
The business case for contributing code
The business case for contributing codeThe business case for contributing code
The business case for contributing code
 
Css compass sasssusy
Css   compass sasssusyCss   compass sasssusy
Css compass sasssusy
 
Migrate
MigrateMigrate
Migrate
 
From a Contractor to a Shop: How to grow your Drupal business without losing ...
From a Contractor to a Shop: How to grow your Drupal business without losing ...From a Contractor to a Shop: How to grow your Drupal business without losing ...
From a Contractor to a Shop: How to grow your Drupal business without losing ...
 
Drupal Presentation @ the Higher Education Web Symposium
Drupal Presentation @ the Higher Education Web SymposiumDrupal Presentation @ the Higher Education Web Symposium
Drupal Presentation @ the Higher Education Web Symposium
 

Understanding High Performance Caching with SSL DrupalCampNJ 2013

  • 1. Understanding high performance caching with SSL DrupalCamp NJ 2013 Saturday, 02 Feb 2013 Princeton, NJ
  • 2. Laurence Liss Senior Developer drupal.org: lliss
  • 3. About me ➡ Film school graduate with a mathematics degree ➡ Became a magazine writer and editor ➡ Had to get content on the Web ➡ Slid from print editorial to online ➡ Led development teams ➡ Started building sites ➡ Learned to do real programming ➡ Became interested in Drupal ➡ Fell in love with Drupal and was hired by Zivtech
  • 4. What we’ll cover • Caching basics • Drupal Performance • Reverse Proxy Caches • SSL termination • Varnish • Pound • Simple Demo • Proxy vs Reverse Proxy (maybe)
  • 5. Drupal is kind of slow There I said it...
  • 6. Drupal is kind of slow Drupal gives tremendous power and flexibility but there is always an associated cost. Drupal’s core systems provide layers of caching to help.
  • 7. Drupal is kind of slow
  • 9. A human analogy... You’ve got an office, many files, many clients, each with different needs. People keep calling and asking for information. Each request requires you to dig around in some more papers for an answer.
  • 10. A human analogy... Soon, you’re putting people on hold as you service requests. Clients are getting angry. You’ve even gone so far as to put common information on sticky notes but you still need to find them when asked.
  • 11. So what do you do? Get a secretary...
  • 12. Meet your secretary Your secretary has a great memory (much better than yours). Answers the phone when clients call. At first, doesn’t know anything about the office. Bugs you a lot.
  • 15. Meet your secretary After hearing an answer to a question can just answer the question again the next time from memory.
  • 16. A human analogy... In this setup, you, the person in the messy office, are Web server (Apache). Your secretary with that brilliant memory, that’s the reverse-proxy cache.
  • 17. A real setup Apache and PHP do the heavy lifting. Varnish is the reverse-proxy cache.
  • 18. Varnish A reverse-proxy not this HTTP accelerator Popular among Drupal devs Smart configuration, very flexible CC license Rubber Dragon flickr.com/photos/rubberdragon/
  • 19. Varnish Standard package on many Linux variants Custom configuration language (vcl files) Speaks HTTP, knows HTTP, loves HTTP
  • 20. Varnish Varnish is a quick solution to improve the responsiveness of your site for most users. Let’s change topic for a moment.
  • 21. Security is a feature Your site is an investment. - time - money - resources The trust of your users is an asset. CC license Ice Sabre flickr.com/photos/icesabre/
  • 22. Security is a feature The Internet is a scary place. At least we have good crypto. Crypto doesn’t solve everything. But it solves a lot... CC license Ice Sabre flickr.com/photos/icesabre/
  • 23. Security is a feature SSL everywhere is worth considering. The overhead isn’t much (potentially negligible on a big Drupal site). CC license Ice Sabre flickr.com/photos/icesabre/
  • 24. Back to the analogy... We can think of HTTP and HTTPS as two different languages. Consider HTTP as English and HTTPS as French. Let’s say you want to start doing business with French speakers.
  • 25. But your secretary doesn’t speak French This isn’t going to work so well. If all your calls are in French she’ll be no help at all.
  • 26. Varnish Yeah Varnish doesn’t handle SSL termination (i.e. it doesn’t speak HTTPS) and it’s not going to.
  • 27. That’s cool. Other things do Pound is another reverse proxy tool that handles SSL termination Somewhat lacking in documentation and sparky how-to guides on the Internet I made this logo up
  • 28. Pound Handles load balancing Can remove servers that fail from rotation Can send requests for static files to a different physical server (or server service like lighthttpd) I made this logo up
  • 29. Pound “Pound does not access the hard- disk at all (except for reading the certificate file on start, if required) and should thus pose no security threat to any machine.” I liked this quote from the Pound Web site at http://www.apsis.ch/pound I made this logo up
  • 30. Pound is your new translator Fluent in both French and English Can pass messages from your French callers to your brainy secretary.
  • 37. Time for a demo Because talk is cheap...
  • 38. Thank You Do you have questions?