home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / srev13h.zip / sreproxy.doc < prev    next >
Text File  |  2001-03-27  |  4KB  |  90 lines

  1. 15 May 1998: The SREPROXY "proxy-like" front end for SRE-http.
  2.  
  3. 1) Abstract: 
  4.  
  5. SREPROXY is a "proxy-like" front end for SRE-http. More precisely, SREPROXY
  6. is a mini filter that provides caching services for SRE-http -- it
  7. is NOT an http compliant "proxy".
  8.  
  9. The major advantage of using SREPROXY is that it is smalll
  10. (approximately 10k, as compared to 100k for SREFILTR.80), and doesn't try
  11. to do a lot. Thus, when it is applicable (more on that below)
  12. it can be significantly faster then the standard filter (SREFILTR.80).
  13. Most importantly, SREPROXY achieves this performance boost without 
  14. sacrificing any functionality
  15.  
  16. 2) Usage:
  17.  
  18. To use SREPROXY, just set it to be your "GoServe" filter.  That is,
  19. instead of using SREFILTR.80, use SREPROXY.80.
  20.  
  21. There are no other requirements--- but do note that if you switch from
  22. SREFILTR.80 to SREPROXY.80, you'll have to restart GoServe. Note that
  23. the parameters in SREFILTR.80 are still used, even though SREFILTR.80 is 
  24. not the primary filter.
  25.  
  26.  
  27. Advanced users may wish to modify a few parameters in SREPROXY.RXX, and
  28. one parameter in SREPROXY.80.  However, these are quite minor parameters,
  29. and can be safely ignored.
  30.  
  31.  
  32. 3) Description
  33.  
  34. SREPROXY works by comparing all requests against a special
  35. cache (a caching daemon is used). If SREPROXY finds a match to 
  36. a requested resource (in this daemon mediated cache), then the
  37. matching file (and matching http/1.1 compliant headers) are returned.
  38. If no match is found, then the main filter (SREFILTR.80) is called
  39. (as an external rexx procedure). 
  40.  
  41. Basically, SREPROXY is a replacment for the GoServe cache.  Although the
  42. GoServe cache can be used,  it is (currently) not http/1.1 compliant. Thus,
  43. its use is not generally recommended (for details on using the GoServe
  44. cache with sre-http, see the discussion of the CACHE* permission in 
  45. SREHTTP.HTM).
  46.  
  47. When using SREPROXY it's a good idea to try and "render cachable"
  48. as many resources as possible (actually, in the http/1.1 world this is
  49. always a good strategy). SREPROXY eases this by providing services that
  50. a normal "proxy server" could not provide. These include:
  51.  
  52.   a) SREPROXY will "postfilter" all requests -- including requests that it
  53.      resolves. Thus, accurate counts (say, in the COMMON.LOG file) can 
  54.      be maintained.
  55.  
  56.   b) SREPROXY will resolve a set of "semi-dynamic" SSIs. These include 
  57.      several time and date SSIs, as well as "current" URL SSIs (see
  58.      SREPROXY.SHT for a list of these semi-dynamic SSIs").
  59.      
  60.   c) SREPROXY will check for username/passwords, use them to lookup privileges,
  61.      and compare against the privileges associated with a cached resource.  
  62.  
  63. There are a few drawbacks associated with the use of SREPROXY
  64.  
  65.    a) If you have few cachable resources, use of SREPROXY will diminish throughput
  66.       (since the net effect is to add useless work by SREPROXY prior to the invocation
  67.        of SREFILTR).
  68.    b) In some cases, SREPROXY will use be slow about updating its cache after changes
  69.       to an underlying resource (i.e.; if you rapidly & repeatedly change a document).
  70.  
  71.  
  72. 4) Notes
  73.  
  74.  *  The SREPROXY "cache" should not be confused with the SSI or !DIR cache.  The
  75.     SREPROXY cache does not lead to the creation of a new file. Rather, it
  76.     consists of a database that relates a request selector to a file, response 
  77.     headers, and other information. This file may be a permanent file (say, a .GIF
  78.     image), or may be a transient "SSI-cached" file (that is, the result of 
  79.     applying static SSI's to an HTML document). In no case does the database contain
  80.     actual content --  there must be some kind of file somewhere for it to return. 
  81.     Thus, truely temporary output can not be cached by SREPROXY.
  82.  
  83.  
  84.   * The CACHING.DOC file contains a discussion of other forms of caches that may
  85.     handle requests sent to your server (such as proxy caches, the GoServe cache,
  86.     and the SSI cache).
  87.  
  88.     
  89.     the 
  90.