아래와 같이 Kafka에 와일드 카드가있는 패턴을 사용하여 구독하고 있습니다. 와일드 카드는 동적 고객 ID를 나타냅니다.kafka-python을 사용하여 여러 kafka 와일드 카드 패턴 목록을 구독하는 방법?
consumer.subscribe(pattern='customer.*.validations')
주제 문자열에서 고객 ID를 뽑을 수 있기 때문에 잘 작동합니다. 하지만 지금은 약간 다른 목적으로 유사한 주제를 듣기 위해 기능을 확장해야합니다. customer.*.additional-validations
이라고합시다. 많은 기능이 공유되기 때문에 코드는 동일한 프로젝트에 있어야하지만 큐 유형에 따라 다른 경로를 사용할 수 있어야합니다.
Kafka documentation에서 일련의 주제를 구독 할 수 있음을 알 수 있습니다. 그러나 이들은 하드 코딩 된 문자열입니다. 유연성을 허용하는 패턴이 아닙니다.
>>> # Deserialize msgpack-encoded values
>>> consumer = KafkaConsumer(value_deserializer=msgpack.loads)
>>> consumer.subscribe(['msgpackfoo'])
>>> for msg in consumer:
... assert isinstance(msg.value, dict)
어떻게 든 두 가지를 조합 할 수 있는지 궁금합니다. 종류의 (비 작업)처럼 다음 KafkaConsumer 코드에서
consumer.subscribe(pattern=['customer.*.validations', 'customer.*.additional-validations'])
감사합니다. 이 구문은 훌륭하게 작동합니다. –