channels_redis config options

monica·2021년 3월 28일
0

Config options

CHANNEL_LAYERS = {
    "default": {
        "BACKEND": "channels_redis.core.RedisChannelLayer",
        "CONFIG": {
            "hosts": [("localhost", 6379)],
        },
    },
}

prefix
모든 레디스 키에 붙일 접두어. 기본 asgi:
같은 레디스 인스턴스를 통해서 두개 이상의 완전히 나뉘어진 채널 레이어를 운영한다면 서로 다른 접두어를 갖도록 하라.
같은 레이어에서 이야기하는 서버들은 같은 접두어를 가져야 한다.

expiry
메시지 파기 기한. 기본 60초.

group_expiry
그룹 파기 기한. 기본 86400초.

capacity
기본 채널 수용량. 기본 100.
수용량에 다다르면 더이상의 메시지는 거부됨.
ex) http 서버가 연결을 끊는다, 여유가 있을 때 까지 장고가 응답메시지를 보내는 것은 대기된다.

channel_capacity
채널당 수용량.
채널 이름을 glob 패턴이나 정규표현식으로 표현하는것을 지원함.
ex)

CHANNEL_LAYERS = {
    "default": {
        "BACKEND": "channels_redis.core.RedisChannelLayer",
        "CONFIG": {
            "hosts": [("localhost", 6379)],
            "channel_capacity": {
                "http.request": 200,
                "http.response!*": 10,
                re.compile(r"^websocket.send\!.+"): 20,
            },
        },
    },
}

매칭 순서를 강제하고 싶다면 OrderedDict를 사용한다.

symmetric_encryption_keys
이 옵션을 사용하려면 ctyptography 패키지 필요.
channels_redis 설치시

pip install channels_redis[cryptography]

문자열 목록으로서 각 문자열은 암호화키이다.

참고: https://github.com/django/channels_redis

profile
개발자

0개의 댓글