dev add cache for search
Test Workflow / test (push) Has been cancelled

This commit is contained in:
2026-05-21 16:15:50 +07:00
parent cf2aefe6c3
commit 942e4d4926
2 changed files with 20 additions and 30 deletions
@@ -1,5 +1,6 @@
package ru.soune.nocopy.configuration;
import com.github.benmanes.caffeine.cache.Caffeine;
import com.vrt.AudioFilePathProvider;
import com.vrt.fileprotection.FileProtector;
import com.vrt.fileprotection.audio.AudioLocalSearch;
@@ -8,16 +9,21 @@ import com.vrt.fileprotection.image.ImageLocalSearch;
import com.vrt.fileprotection.image.ImageUniqueCheck;
import lombok.AllArgsConstructor;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.caffeine.CaffeineCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
import java.util.Collections;
import java.util.concurrent.TimeUnit;
@Configuration
@EnableAutoConfiguration
@AllArgsConstructor
@EnableCaching
public class ApplicationConfig {
// private final FileEntityRepository fileEntityRepository;
@@ -55,6 +61,20 @@ public class ApplicationConfig {
);
}
@Bean
public CacheManager cacheManager() {
CaffeineCacheManager cacheManager = new CaffeineCacheManager(
"imageSearch", "parsedImages");
cacheManager.setCaffeine(Caffeine.newBuilder()
.maximumSize(10000)
.expireAfterWrite(1, TimeUnit.HOURS)
.recordStats()
);
return cacheManager;
}
// private List<FileProtector.FileInfo> loadProcessingFile() {
// List<FileEntity> byProtectionStatus =
// fileEntityRepository.findByProtectionStatus(ProtectionStatus.PROCESSING);
@@ -1,30 +0,0 @@
package ru.soune.nocopy.configuration;
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.caffeine.CaffeineCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.concurrent.TimeUnit;
@Configuration
@EnableCaching
public class CacheConfig {
@Bean
public CacheManager cacheManager() {
CaffeineCacheManager cacheManager = new CaffeineCacheManager(
"imageSearch", "parsedImages");
cacheManager.setCaffeine(Caffeine.newBuilder()
.maximumSize(10000)
.expireAfterWrite(1, TimeUnit.HOURS)
.recordStats()
);
return cacheManager;
}
}