본문 바로가기

Language/JAVA

java Cache Algorithm(캐시 알고리즘)

728x90

java Cache Algorithm(캐시 알고리즘)


캐싱은 데이터를 메모리 등 저장 해놓았다가 빼서 쓰는게 캐싱이다.

주로 select를 많이 해야 하는 경우, 많이 타는 로직에서 캐싱을 쓴다.

자바 코드에서 캐싱 로직을 둔다고 하면 Map에 넣을 수도 있고 List에 넣을 수 있을 것이다.


미국에서는 캐시 대체 알고리즘(cache replacement algorithms) 또는 캐시 대체 정책(cache replacement policies) 등으로 부른다.


캐싱 알고리즘을 어떤 것을 쓰는지에 따라서 성능이 천차만별이고 상황에 따라서 써야 하는게 다르다.

일단은 캐싱의 종류에 대해서 알아보자.

1.Bélády's algorithm

2.First in first out (FIFO)

3.Last in first out (LIFO)

4.Least recently used (LRU)

5.Time aware least recently used (TLRU)

6.Most recently used (MRU)

7.Pseudo-LRU (PLRU)

8.Random replacement (RR)

9.Segmented LRU (SLRU)

10.Least-frequently used (LFU)

11.Least frequent recently used (LFRU)

12.LFU with dynamic aging (LFUDA)

13.Low inter-reference recency set (LIRS)

14.Adaptive replacement cache (ARC)

15.Clock with adaptive replacement (CAR)

16.Multi queue (MQ)

17.Pannier

이렇게 종류가 많다.


출처 : https://en.wikipedia.org/wiki/Cache_replacement_policies#Least_Recently_Used


end.



728x90
블로그 주인장입니다. 원하시는 정보는 얻으셨나요? 이 포스트에서 추가로 필요한 정보가 있으시면 여기에 남겨주세요.