使用consu生成memcached服务器列表的django模块

django-memcached-consul的Python项目详细描述


django memcached领事馆

django memcached consur帮助使用memcached服务器的consur。 它将查询consunhealthapi,以便在每次使用缓存时获取服务器列表。

用法

配置在django项目的local_settings.py的缓存部分完成。 django memcached consul使用django memcached驱动程序,因此所有与 缓存本身应该像在django memcached中那样进行。

要使用consu,您需要使用特定的django memcached consu驱动程序: django-consul-memcached.memcached.MemcachedCache

并提供有关领事和所需服务的信息:

CONSUL_HOST # The Consul API host
CONSUL_PORT # The Consul API port
CONSUL_SERVICE # The service of the memcached servers in Consul

可以并且强烈建议为consul使用缓存,否则将调用consunapi 将在每次使用缓存时发出。

django memcached consul使用两层缓存:第一层应该是短生命的(CONSUL_TTL) 用于缓存memcached服务器列表,每次使用 django consul memcached驱动程序。第二个是长寿命(CONSUL_TTL_ALT),在 无法访问领事API。要使用的缓存的名称在CONSUL_CACHE和缓存中设置 最好是基于文件的缓存,以便在所有工作进程中共享。

示例

CACHES = {
    'default': {
        'BACKEND': 'django_memcached_consul.memcached.MemcachedCache',
        'TIMEOUT': 60,
        'CONSUL_TTL': 60,
        # Alt cache will be used if consul is unreachable
        'CONSUL_ALT_TTL': 3600,
        'CONSUL_CACHE': 'consul-memcached',
        'CONSUL_HOST': 'consul.organization.com',
        'CONSUL_PORT': 8500,
        'CONSUL_SERVICE': 'memcached-service',
    },
    'consul-memcached': {
        'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
        'LOCATION': '/var/tmp/django_consul_cache',
    }
}

测试

测试需要memcached和tox。

首先需要在默认配置(通常在localhost:11211)上运行memcached,否则 必须更改tests/tests_data/consul_api_health_mock_with_memcached.json中的信息。

然后,您可以在项目的根目录下运行tox来开始测试:

tox

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android测试运行失败:没有测试结果   java设置JMenuItems与Nimbus LaF的边界   java是使用springboot、Crudepository和MySQL检查重复值的好方法吗   谷歌电子表格的Java时代日期   java向xml文件添加EditText不起作用   java ORA00933:SQL命令未正确结束WHERE子句   如何在java中防止JTextField上使用CTRL+C?   java绑定到TypeLiteral在google guice中是好的还是坏的做法   java找到了原始类型,缺少泛型类的返回参数   Kafka Streams API中ArrayList Serde的java问题   java在hibernate中,哪种持久化上下文的性能更好?   java通过本机查询获取数据库url、名称和模式版本   如何为Java枚举编写通用for循环?   在Java应用程序中播放MP3   如何使用VisualVM度量短时间运行的Java应用程序的性能?   java从当前日期获取datetime(秒)   简单JMH基准中的javagrpcoome和NPE   java如何加载Maven项目库中Spring jar的应用程序上下文   JavaCC XPath解析器   用于Scala和Java的类型安全生成器库