build of mod_socache_memcache. It now needs
mod_status.h.
Untested but exactly analogous to what works for
mod_socache_shmcb and others.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1774609 13f79535-47bb-0310-9956-ffa450edef68
</br> --> <br />
Couls also be <br> or <br/> but some (very) old clients don't like it.
httpd is not really consistent on it. (personnlaly <br> would be just fine for me but <br /> is the most commonly used form)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1769737 13f79535-47bb-0310-9956-ffa450edef68
It looks like this was the original intent. The provider
is not registered if apr-redis is missing.
It was previously failing to compile due to the dirconf being
hidden behind the #ifdef guard but not the routine module
code that used it.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1769712 13f79535-47bb-0310-9956-ffa450edef68
+ *) mod_cache: Consider Cache-Control: s-maxage in expiration
+ calculations. [Eric Covener]
+
+ *) mod_cache: Allow caching of responses with an Expires header
+ in the past that also has Cache-Control: max-age or s-maxage.
+ PR55156. [Eric Covener]
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1726675 13f79535-47bb-0310-9956-ffa450edef68
is received from an origin server in multiple batches and forwarded by
mod_proxy.
Upstream buckets should be setaside when saving response body (store_body),
but since those will finally be flatten in the cache buffer (commit_entity),
let's save them directly into the buffer to avoid heap allocation(s) and
the final copy.
Reported by: Mike Pastore <mike oobak.org>
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1721899 13f79535-47bb-0310-9956-ffa450edef68
Prior to this revision, there was an apr_atoi64 in this context.
Now, ap_cache_control() sets control.max_age (which is checked here) when
the maxage value was parsed OK.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1718496 13f79535-47bb-0310-9956-ffa450edef68
#rule
A construct "#" is defined, similar to "*", for defining lists of
elements. The full form is "<n>#<m>element" indicating at least
<n> and at most <m> elements, each separated by one or more commas
(",") and OPTIONAL linear white space (LWS). This makes the usual
form of lists very easy; a rule such as
( *LWS element *( *LWS "," *LWS element ))
can be shown as
1#element
It also defines Linear White Space (LWS) as:
LWS = [CRLF] 1*( SP | HT )
The actual implementation only accepts SP (Space) and not HT (Horizontal Tab) when parsing cache related header fields (i.e. "Vary", "Cache-Control" and "Pragma")
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1710723 13f79535-47bb-0310-9956-ffa450edef68
Increased maximum allowed value to 3600 s (1 hour)
Use 'ap_timeout_parameter_parse' to allow more flexible configuration (i.e. h, min, s, ms suffixes)
Use 'apr_time_from_sec' when applicable.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1700418 13f79535-47bb-0310-9956-ffa450edef68
The root cause is a too small idle timeout (600 microseconds).
Add a new directive, 'MemcacheConnTTL', to control this idle connection timeout with the memcache server(s).
Change the default value from 600 usec (!) to 15 sec as per Yann suggestion.
I've limited accepted values from 1 to 1800 seconds (half an hour) because internaly, the value passed to 'apr_memcache_server_create' is still in mirco-seconds.
PR 58091
~~~~~~~~~~~~~~~~~~~_
Homemade measurement (on a slighly modified version of httpd) shows a +30% in number of processed requests using memcache to cache /index.html.
Comparison made between the 600 usec and 15 sec TTL.
Memcache config:
default
httpd Config:
CacheEnable socache /
CacheSocache memcache:127.0.0.1
LoadModule mpm_event_module modules/mod_mpm_event.so
httpd compiled with:
./configure --enable-mpms-shared=all --with-included-apr --with-mysql --with-libxml2 --enable-modules=reallyall --enable-ssl-ct=no --enable-maintainer-mode --prefix=$HOME/httpd-2.5
httpd and memcache running on the same VM running under Ubuntu 15.04
Load tested using:
ab -n 20000 http://127.0.0.1/index.html
Creation/closing of connections beetween httpd and memcache confirmed using the telnet connection to memcache and the stats command
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1696105 13f79535-47bb-0310-9956-ffa450edef68