mirror of
				https://github.com/django/django.git
				synced 2025-11-03 21:25:09 +00:00 
			
		
		
		
	Fixed #3648 -- Added support for cmemcached Python library. Thanks, floguy@gmail.com
git-svn-id: http://code.djangoproject.com/svn/django/trunk@4827 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
		
							parent
							
								
									9c10a2f118
								
							
						
					
					
						commit
						a5bb14ed2e
					
				
					 2 changed files with 18 additions and 6 deletions
				
			
		
							
								
								
									
										7
									
								
								django/core/cache/backends/memcached.py
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								django/core/cache/backends/memcached.py
									
										
									
									
										vendored
									
									
								
							| 
						 | 
				
			
			@ -3,9 +3,12 @@
 | 
			
		|||
from django.core.cache.backends.base import BaseCache, InvalidCacheBackendError
 | 
			
		||||
 | 
			
		||||
try:
 | 
			
		||||
    import memcache
 | 
			
		||||
    import cmemcache as memcache
 | 
			
		||||
except ImportError:
 | 
			
		||||
    raise InvalidCacheBackendError, "Memcached cache backend requires the 'memcache' library"
 | 
			
		||||
    try:
 | 
			
		||||
        import memcache
 | 
			
		||||
    except:
 | 
			
		||||
        raise InvalidCacheBackendError("Memcached cache backend requires either the 'memcache' or 'cmemcache' library")
 | 
			
		||||
 | 
			
		||||
class CacheClass(BaseCache):
 | 
			
		||||
    def __init__(self, server, params):
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -66,10 +66,19 @@ deleting arbitrary data in the cache. All data is stored directly in memory,
 | 
			
		|||
so there's no overhead of database or filesystem usage.
 | 
			
		||||
 | 
			
		||||
After installing Memcached itself, you'll need to install the Memcached Python
 | 
			
		||||
bindings. They're in a single Python module, memcache.py, available at
 | 
			
		||||
ftp://ftp.tummy.com/pub/python-memcached/ . If that URL is no longer valid,
 | 
			
		||||
just go to the Memcached Web site (http://www.danga.com/memcached/) and get the
 | 
			
		||||
Python bindings from the "Client APIs" section.
 | 
			
		||||
bindings. Two versions of this are available. Choose and install *one* of the
 | 
			
		||||
following modules:
 | 
			
		||||
 | 
			
		||||
    * The fastest available option is a module called ``cmemcache``, available
 | 
			
		||||
      at http://gijsbert.org/cmemcache/ . (This module is only compatible with
 | 
			
		||||
      the Django development version. Django 0.96 is only compatible with the
 | 
			
		||||
      second option, below.)
 | 
			
		||||
 | 
			
		||||
    * If you can't install ``cmemcache``, you can install ``python-memcached``,
 | 
			
		||||
      available at ftp://ftp.tummy.com/pub/python-memcached/ . If that URL is
 | 
			
		||||
      no longer valid, just go to the Memcached Web site
 | 
			
		||||
      (http://www.danga.com/memcached/) and get the Python bindings from the
 | 
			
		||||
      "Client APIs" section.
 | 
			
		||||
 | 
			
		||||
To use Memcached with Django, set ``CACHE_BACKEND`` to
 | 
			
		||||
``memcached://ip:port/``, where ``ip`` is the IP address of the Memcached
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue