Hot
-
[Java] Array copy 배열 복사/복제
[얕은 복사] 주소값 복사 1. B = A; 예시 [깊은 복사] 복제. 새로운 메모리 공간에 값 복사 2. B = A.clone(); 예시 3. 기존 배열의 일부만 덮어씌우기 || clone()보다 더 빠르길 원할 때 System.arraycopy( A, sourcePos, B, destPos, len ); 예시 4. 원하는 길이 설정 B = Arrays.copyOf( A, newLength ); 예시 5. 원하는 시작점 설정 B = Arrays.copyOfRange( A, from_index, to_index ); 예시 [깊은 복사] 2차원 배열 👀 예시 [얕은 복사] 주소값 복사 1. B = A; 예시 class Main { public static void main(String[] args) { i..
2020.05.31
-
[데이터베이스] 정규화 vs. 비정규화(반정규화)
💡 정규화 vs. 비정규화(반정규화) 데이터베이스 정규화 데이터베이스 비정규화 데이터베이스 비정규화(Denormalization, 반정규화)란 무엇인가? 장점, 단점 비정규화 대상 주의점 정규화(Normalized)란 무엇인가? 장점, 단점 정규화의 원칙 함수적 종속(Functional Dependency) 완전 함수적 종속, 부분 함수적 종속 ✍️ 질문 체크 ⍞ Reference 💡 정규화 vs. 비정규화(반정규화) 데이터베이스 정규화 데이터베이스(normalized database)는 중복을 최소화하도록 설계된 데이터베이스를 말한다. 비정규화 데이터베이스(denormalized database)는 읽는 시간을 최적화하도록 설계된 데이터베이스를 말한다. 정규화 데이터베이스 같은 데이터는 데이터베이스 내..
2020.06.15
-
이분 탐색(Binary Search), 어떨 때 적용할까?
이분(이진) 탐색이란? 적용 연습 문제 🔗 프로그래머스, 예산 🔗 프로그래머스, 입국심사 ⍞ Reference 이분(이진) 탐색이란? 찾고자 하는 값을 검색할 때, 범위의 가운데 값을 검사하여 원하는 값이 나올 때까지 반씩 줄여나가며 찾는다. 사전을 찾을 때 그냥 한번 펼쳐서 찾는 단어가 없으면 위치에 따라 앞쪽을 찾거나 뒤쪽을 찾고 이 과정을 찾을 때까지 반복하는 것을 생각하면 된다. 속도 : O(log N) 🤖 O(log N)의 위력이 감이 잘 안 온다면, 4,294,967,296개(약 43억 개)의 원소가 있는 리스트에서 원하는 특정 값을 찾아낼 때 최악의 탐색 깊이(찾는 값이 없는 경우)는 딱 32회이다. 그러나 순차 탐색의 최악의 경우는 4,294,967,296회이다. 저게 0부터 순서대로 숫자..
2020.05.26
-
[OS] 가상 메모리
가상 메모리 가상 메모리 개발 배경 프로그램의 일부분만 메모리에 올릴 수 있다면...? 가상 메모리가 하는 일 1. 가상 주소 공간 제공 2. 프로세스 간의 페이지 공유 Demand Paging(요구 페이징) Page fault trap(페이지 부재 트랩) 페이지 교체 기본적인 방법 페이지 교체 알고리즘 FIFO 페이지 교체(FIFO;First-In First-Out) 최적 페이지 교체(OPT;Optimal) LRU 페이지 교체(LRU;Least Recently Used) 계수 기반(Countin-Based) 페이지 교체 - LFU, MFU ⍞ Reference 가상 메모리 다중 프로그래밍을 실현하기 위해서는 많은 프로세스들을 동시에 메모리에 올려두어야 한다. 가상메모리는 프로세스 전체가 메모리 내에 올..
2020.09.13
-
[실무로 배우는 시스템 성능 최적화] 서버 모니터링
기본 방향 서버 자원 사용률 확인 시 중간 점검 항목 CPU Memory Disk Network 자원 모니터링 로그를 남겨서 분석 시 CPU 사용량 분석 안정적인 운영을 위한 CPU 사용률 기준 CPU 사용량 상세 분석 가상화 CPU 사용률 Memory 메모리 부족과 성능 영향 운영체제 측면의 메모리 부족 여부와 성능 영향도 자바 기반 솔루션의 경우 오라클 버퍼캐시처럼 데이터 베이스의 경우 가상 메모리 주요 개념 사용량 분석 안정적 운영을 위한 메모리 판단 기준 일반적인 메모리 사용률 산출 1. 파일 캐시 2. IPC(Inter-Process Communication) 3. 프로세스 기본 방향 서버 자원 사용률 확인 시 중간 점검 항목 일반적으로 CPU → Memory → Disk → Network 순으..
2020.09.06