Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

캐시에 저장하기 전에 Python 객체를 압축하는 방법은 무엇입니까?

<시간/> <본문>

파이썬 객체(목록, 사전, 문자열 등)를 캐시에 저장하기 전에 압축하고 캐시에서 읽은 후 압축을 풀어야 하는 경우가 있습니다.

먼저 객체를 압축해야 하는지 확인해야 합니다. 데이터 구조/객체가 너무 커서 캐시에 압축되지 않은 상태로 저장되지 않는지 확인해야 합니다. 압축/압축 해제에 대한 오버헤드가 있을 것이며, 우선 캐싱을 통해 얻은 이득과 절충해야 합니다.

압축이 정말로 필요하다면 아마도 zlib를 사용하고 싶을 것입니다.

zlib를 사용하려는 경우 compress 메서드에서 사용 가능한 다양한 압축 수준을 실험하여 CPU 시간과 압축 수준의 균형을 맞출 수 있습니다.

zlib.compress(문자열[, 수준])

문자열의 데이터를 압축하여 압축된 데이터가 포함된 문자열을 반환합니다. level은 압축 수준을 제어하는 ​​1에서 9 사이의 정수입니다. 1은 가장 빠르고 가장 적은 압축을 생성하고, 9는 가장 느리고 가장 많이 생성합니다. 기본값은 6입니다. 오류가 발생하면 오류 예외를 발생시킵니다.