<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
    <title></title>
  </head>
  <body bgcolor="#ffffff" text="#000000">
    The best way would be to use a jump table.<br>
    By that, I mean to make multiple subroutines in C, and then to jump
    to the different subroutines by looking<br>
    up pointers to the subroutines using a string hashing/lookup system.<br>
    <br>
    You would also need a flag to indicate whether the hash has been
    'initialized' yet as well.<br>
    The initialization would consist of storing function pointers at the
    hash locations corresponding to each<br>
    of the domains.<br>
    <br>
    I attempted to do this myself when I first started using varnish,
    but I was having problems with varnish<br>
    crashing when attempting to use the code I wrote in C. There may be
    limitations to the C code that can be<br>
    used.<br>
    <br>
    On 3/6/2011 5:39 PM, AD wrote:
    <blockquote
      cite="mid:AANLkTin5rEznSUyEz03=wat-zyhA1dFaUw4oU7Yn0Ox0@mail.gmail.com"
      type="cite">Hello,
      <div> </div>
      <div> what is the best way to run an instance of varnish that may
        need different vcl configurations for each hostname.  This could
        end up being 100-500 includes to map to each hostname and then a
        long if/then block based on the hostname.  Is there a more
        scalable way to deal with this?  We have been toying with
        running one large varnish instance with tons of includes or
        possibly running multiple instances of varnish (with the config
        broken up) or spreading the load across different clusters (kind
        of like sharding) based on hostname to keep the configuration
        simple.</div>
      <div><br>
      </div>
      <div> Any best practices here?  Are there any notes on the
        performance impact of the size of the VCL or the amount of
        if/then statements in vcl_recv to process a unique call function
        ?</div>
      <div><br>
      </div>
      <div>
        Thanks</div>
      <div><br>
      </div>
      <pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
varnish-misc mailing list
<a class="moz-txt-link-abbreviated" href="mailto:varnish-misc@varnish-cache.org">varnish-misc@varnish-cache.org</a>
<a class="moz-txt-link-freetext" href="http://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc">http://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc</a></pre>
    </blockquote>
    <br>
  </body>
</html>