, , python-memcached, , SERVER_MAX_VALUE_LENGTH .
, __init__, FizxMike, _cache . python-memcached, SERVER_MAX_VALUE_LENGTH , :
from django.core.cache.backends.memcached import BaseMemcachedCache
DEFAULT_MAX_VALUE_LENGTH = 1024 * 1024
class MemcachedCache(BaseMemcachedCache):
def __init__(self, server, params):
self._options = params.get("OPTIONS", {})
import memcache
memcache.SERVER_MAX_VALUE_LENGTH = self._options.get('SERVER_MAX_VALUE_LENGTH', DEFAULT_MAX_VALUE_LENGTH)
super(MemcachedCache, self).__init__(server, params,
library=memcache,
value_not_found_exception=ValueError)
@property
def _cache(self):
if getattr(self, '_client', None) is None:
server_max_value_length = self._options.get("SERVER_MAX_VALUE_LENGTH", DEFAULT_MAX_VALUE_LENGTH)
self._client = self._lib.Client(self._servers,
server_max_value_length=server_max_value_length)
return self._client
, BaseMemcachedCache django.
django memcached backend :
https://github.com/django/django/blob/master/django/core/cache/backends/memcached.py
!