본문으로 바로가기

java Cache Algorithm(캐시 알고리즘)

category Language/JAVA 2018.07.03 14:33

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.




댓글을 달아 주세요