DeleteStoredData를 사용하여 캐시된 데이터 관리

MIP SDK 보호 엔진은 성능을 향상시키고 네트워크 호출을 줄이기 위해 보호 라이선스 및 서비스 검색 데이터를 로컬로 캐시합니다. 시간이 지남에 따라 이 캐시는 특히 많은 양의 보호된 콘텐츠를 처리하는 애플리케이션에서 증가할 수 있습니다. MIP SDK 1.18부터 이 DeleteStoredData() 메서드는 ProtectionEngine 캐시된 데이터를 프로그래밍 방식으로 제거하는 방법을 제공합니다.

개요

DeleteStoredData() API는 ProtectionEngine에서 사용할 수 있으며 두 가지 오버로드를 제공합니다.

  • 모든 데이터 또는 만료된 데이터 삭제: 부울을 전달하여 캐시된 모든 데이터 또는 만료된 항목만 삭제합니다.
  • 특정 시점 이전의 데이터 삭제: 특정 시점을 전달하여 해당 시점 이전에 캐시된 모든 데이터를 제거합니다.

이 기능은 다음 경우에 특히 유용합니다.

  • 대량의 보호된 콘텐츠를 처리하고 디스크 사용량을 관리해야 하는 서버 또는 디먼 애플리케이션
  • 캐시된 라이선스 데이터를 주기적으로 제거해야 하는 규정 준수 시나리오입니다.
  • 시간이 지남에 따라 캐시된 데이터를 누적하는 장기 실행 애플리케이션입니다.

C++ 예제

#include "mip/protection/protection_engine.h"

// Delete only expired cached data (default behavior)
protectionEngine->DeleteStoredData();

// Delete all cached data
protectionEngine->DeleteStoredData(true);

// Delete cached data older than 30 days
auto thirtyDaysAgo = std::chrono::system_clock::now() - std::chrono::hours(24 * 30);
protectionEngine->DeleteStoredData(thirtyDaysAgo);

C#(.NET) 예제

// Delete only expired cached data
protectionEngine.DeleteStoredData();

// Delete all cached data
protectionEngine.DeleteStoredData(deleteAllData: true);

// Delete cached data older than 30 days
var thirtyDaysAgo = DateTime.UtcNow.AddDays(-30);
protectionEngine.DeleteStoredData(thirtyDaysAgo);

Java 예제

// Delete only expired cached data
protectionEngine.deleteStoredData();

// Delete all cached data
protectionEngine.deleteStoredData(true);

// Delete cached data older than 30 days
ZonedDateTime thirtyDaysAgo = ZonedDateTime.now().minusDays(30);
protectionEngine.deleteStoredData(thirtyDaysAgo);