- 전체
- Python 일반
- Python 수학
- Python 그래픽
- Python 자료구조
- Python 인공지능
- Python 인터넷
- Python SAGE
- wxPython
- TkInter
- iPython
- wxPython
- pyQT
- Jython
- django
- flask
- blender python scripting
- python for minecraft
- Python 데이터 분석
- Python RPA
- cython
- PyCharm
- pySide
Python 자료구조 python - 읽은 후 kafka 메시지를 삭제하는 방법
2021.07.13 22:14
python - 읽은 후 kafka 메시지를 삭제하는 방법
아래 코드를 사용하여 주제에서 메시지를 읽습니다. 메시지를 읽은 후 어떻게 삭제합니까?
from kafka import KafkaConsumer
consumer = KafkaConsumer('my-topic',
group_id='my-group',
bootstrap_servers=['localhost:9092'])
for message in consumer:
# message value and key are raw bytes -- decode if necessary!
# e.g., for unicode: `message.value.decode('utf-8')`
print ("%s:%d:%d: key=%s value=%s" % (message.topic, message.partition,
message.offset, message.key,
message.value))
답
kafka에서 특정 메시지를 삭제하는 방법은 없습니다. kafka는 단순히 그렇게하도록 설계되지 않았습니다. 메시지를 삭제하는 유일한 방법은 kafka의
대신 특정 오프셋에서 메시지를 읽는 방법을 찾고 있다면 (즉, 처음부터 읽을 수없는 경우) 여기 http://kafka-python.readthedocs.org/en/master/apidoc/KafkaConsumer.html를보십시오.
log.retention.hours
에서 config/server.properties
를 원하는 값으로 설정하는 것입니다. 기본값은 168입니다. 즉, 168 시간 후에 메시지가 보관되지 않습니다.대신 특정 오프셋에서 메시지를 읽는 방법을 찾고 있다면 (즉, 처음부터 읽을 수없는 경우) 여기 http://kafka-python.readthedocs.org/en/master/apidoc/KafkaConsumer.html를보십시오.
commit()
-kafka에 읽기 오프셋 커밋seek_to_end()
-새로 도착한 메시지 만 사용하도록 빨리 감기seek()
-지정된 오프셋으로 이동 (kafka가 아닌 다른 곳에 저장되어 있음)
이 질문에 대해 Stack Overflow에서 비슷한 토론을 찾았습니다: https://stackoverflow.com/questions/34694191/
[출처] https://pythonq.com/so/python/1070372
본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.