반응형 분류 전체보기82 JVM STW 시간 : minor GC < full GC 기본적인 GC 방법으로 Minor GC에서 Copy & Scavenge 알고리즘을 사용하고, Full GC에서 Mark & Compact 알고리즘을 사용하는 방법입니다. Copy & Scavenge Minor GC가 발생하면 Eden과 Survivor1의 활성 객체를 Survivor2로 복사하고, Eden과 Survivor1 영역을 비웁니다. 다음 Minor GC가 발생하면 Eden과 Survivor2의 활성 객체를 Survivor1로 복사하고, Eden과 Survivor2 영역을 비웁니다. 다음과 같은 작업을 반복적으로 수행해 오래된 객체는 Old 영역으로 옮겨지게 됩니다. Hit(GC에서 살아남은 횟수)가 Tenuring Threshold 만큼 수행된.. 2021. 6. 28. String / StringBuffer / StringBuilder String은 Serializable, CharSequence, Comparable 인터페이스가 상속되어 있고 public final class로 되어 있다. serialize가 가능하며 문자열이고 비교가능한 값이라는 것을 알 수 있다. 또한 final class이기 때문에 String class를 상속받을 수는 없다. private final cahr value[] 이기 때문에, 불변하고 외부에서 접근할 수 없기 때문에 새로운 값을 할당할 때마다 새로 생성 -> 클래스 생성, 메모리 남용 따라서, memory에 값을 append하는 StringBuilder와 StringBuffer를 사용 큰 차이점은 StringBuilder는 변경가능한 문자열이지만 synchronization이 적용되지 않았다. St.. 2021. 6. 28. 레드-블랙 트리 이진검색트리는 저장과 검색에 평균 Θ( ))시간이 소요되지만 운이 나쁘면 트리의 모양이 균형을 잘 이루지 못한다. 균형이 많이 깨지면 Θ(n)에 근접한 시간이 소요될 수도 있다. 그래서 고안해 낸 것이 균형잡힌 이진검색트리이다. 균형잡힌 이진검색트리는 최악의 경우에도 이진트리의 균형이 잘 맞도록 유지한다. 균형잡힌 이진검색트리로 대표적인 것은 레드블랙트리와 AVL트리다. 자바의 TreeSet과 TreeMap은 레드-블랙 트리를 베이스로 한 구현을 사용한다. 레드-블랙 트리의 조건 모든 트리의 노드에 검은색 혹은 빨간색을 색칠한다. 루트 노드는 항상 검은색이다. 모든 리프 노드 들은 검은색이다. 빨간색 노드의 자식은 양쪽 다 항상 검은색이다. 4.1. 즉, 빨간색 노드는 연달아 나타날 수 없다. 4.2. .. 2021. 6. 28. 필터 / 인터셉터 / AOP Filter -> Interceptor -> AOP -> Interceptor -> Filter Filter 필터는 Web Application에 등록합니다. 요청 스레드가 서블릿 컨테이너(Servlet Container)에 도착하기 전에 수행됩니다. 필터는 사용자의 요청 정보에 대한 검증하고 필요에 따라 데이터를 추가하거나 변조할 수 있습니다. 응답 정보에 대한 변경도 가능합니다. 주로 전역적으로 처리해야하는 인코딩, 보안 관련된 일을 수행합니다. Filter를 구현하여 webMvcConfigurer에 필터를 추가 Interceptor 인터셉터는 스프링 컨텍스트(Context)에 등록합니다. 서블릿 컨테이너를 통과한 후 컨트롤러에게 요청이 전달되기 전, 후에 대한 처리를 수행합니다. 스프링 컨텍스트 내.. 2021. 6. 28. 이전 1 ··· 4 5 6 7 8 9 10 ··· 21 다음 728x90 반응형