찾다

 >  Q&A  >  본문

redis - 경량 Python 프로그램 및 스크립트에 대한 캐시를 만드는 방법은 무엇입니까?

운영 및 유지 관리 초보자입니다. 최근 회사 로그를 간단하게 처리한 후 목록에 일정량을 추가한 다음 ES 인터페이스를 사용하여 다른 ElasticSearch에 데이터를 일괄 추가한 다음 어떤 방식으로든 표시했습니다. 여기에 문제가 있습니다. 데이터를 삽입하면 예외가 발생합니다. 예를 들어 삽입하려는 es 호스트가 충돌하는 등의 현상이 발생하지만 데이터 소스에는 문제가 없습니다. 이렇게 하면 처리된 데이터가 캐시로 이동한 다음 프로그램이 중지됩니다. (데이터 소스는 kafka입니다. 프로그램이 중지되더라도 다시 시작하면 계속 사용할 수 있습니다.)
그렇다면 비교적 가벼운 Python 프로그램이나 스크립트의 경우 이러한 예외가 발생하면 어떻게 저장해야 합니까? 먼저 저장된 데이터에 대해?

漂亮男人漂亮男人2754일 전806

모든 응답(1)나는 대답할 것이다

  • 阿神

    阿神2017-05-19 10:09:54

    es가 비정상적인 경우 py 스크립트가 예외를 캡처한 후 cPickle或者pickle 将处理好的数据序列化后保存到一个文件上(你可以理解成写入一个文件, 不同在于cPicklepickle를 사용하여 사전이나 목록과 같은 개체를 파일에 직접 쓴 다음 es가 복구되고 py 스크립트를 다시 시작할 때까지 기다릴 수 있습니다. 이 임시 파일이 존재하는지 여부를 우선적으로 감지합니다. 파일이 존재하고 비어 있지 않으면 그 안의 데이터가 제거되어 es

    에 기록됩니다.

    회신하다
    0
  • 취소회신하다