Hi,

In lack of a "this should be fixed"-category, I've chosen support as it's not directly a bug, the module works and it does add the functionality it promises, but at a cost which seems a little odd.

When I enable the module I see a drastic decrease in (what seems to be) concurrent PHP performance. With Varnish module disabeled I see roughly 160 req/s, when I enable it it drops to around 10 req/s. I get CPU-bound when I hit 160 req/s with this module disabled. I'm also using memcached and APC along with Varnish.

In settings.php i invoke

# Memcache
$conf['cache_inc'] = 'sites/all/modules/memcache/memcache.inc';
$conf['cache_backends'][] = 'sites/all/modules/memcache/memcache.inc';
$conf['cache_default_class'] = 'MemCacheDrupal';

# APC
$conf['cache_backends'][] = 'sites/all/modules/apc/drupal_apc_cache.inc';
$conf['cache_class_cache'] = 'DrupalAPCCache';
$conf['cache_class_cache_bootstrap'] = 'DrupalAPCCache';
$conf['apc_show_debug'] = TRUE;

# Varnish
$conf['cache_backends'][] = 'sites/all/modules/varnish/varnish.cache.inc';
$conf['cache_class_cache_page'] = 'VarnishCache';
$conf['page_cache_invoke_hooks'] = FALSE;
$conf['reverse_proxy_header'] = 'HTTP_X_FORWARDED_FOR';
$conf['reverse_proxy_addresses'] = array('127.0.0.1');

Comments

fabsor’s picture

Hmm, I guess something must be trying to purge the page cache very often, like on every page request. This really needs to be looked into. Is this reproducable on a clean install?

vegardx’s picture

I will do some tests and get back to you. I'm currently a little swamped in work, but give me a week or two!

fabsor’s picture

I've been trying this on a vanilla install with varnish module on, and I can't really say I see any performance changes, some quick performance tests shows about the same results and a xdebug profile didn't really reveal any outstanding things. I might be wrong though, so please try it yourself as well.

You can also try setting a breakpoint in varnish.cache.inc in clear function and see if it is executed unnecessarily. If you don't have xdebug installed you can just add a var_dump in there or something.

lurkingbeast’s picture

Aren't you supposed to set
$conf['cache_class_cache_form'] = 'DrupalDatabaseCache';
?

That's what I have understood from reading about drupal 7 caching.

misc’s picture

Issue summary: View changes
Status: Active » Closed (outdated)

Closing issues that had no activity the latest year, please re-open if the issues is still relevant.