• brisk
    link
    fedilink
    arrow-up
    7
    ·
    5 months ago

    Oh god you reminded me of this gem

    https://serverfault.com/questions/780150/how-to-cache-contents-in-haproxy#780155

    Someone asks how to do http caching in HAproxy.

    The one answer:

    don’t use the wrong tool

    haproxy is a wonderful tool. It does not provide caching. A quick scan of the fine docs can verify this. Unless you want to patch haproxy you need to use a tool that does what you’re looking to do.

    don’t create impossible problems

    By asking for haproxy to do something that it doesn’t and excluding the tool that seems to do what you want to do you’ve create an impossible situation. There is no technical solution for this. Don’t make choices that box you into a corner.

    try varnish or anything that actually caches

    If you get over that you might find this tutorial on using varnish with haproxy useful or try varnish by itself. Maybe squid or memcached would be more your speed.

    In the comments to this ludicrous tirade we get this simple comment:

    This was true and valid back then. Nowadays HAProxy does this.

    And just in case someone found this looking for an answer, here’s the example from that link

    backend bck1
      mode http
    
      http-request cache-use foobar
      http-response cache-store foobar
      server srv1 127.0.0.1:80
    
    cache foobar
      total-max-size 4
      max-age 240