전체 글 (72) 썸네일형 리스트형 Github에 있는 프로젝트 Docker Hub에 올린 후 docker compose, AWS로 배포하기 1. 깃허브에 있는 프로젝트를 로컬로 가져온다git clone 깃허브주소 2. Dockerfile 준비 3. Docker 이미지 빌드도커 ID : hey0702프로젝트 이름 : anomaly-detection-frontend태그(버전) : 1.0docker images로 빌드 된 이미지 확인 가능docker desktop에서도 확인 가능 4. Docker Hub 로그인docker hub ID / 비밀번호 입력 성공시출력 5. Docker Hub 에 Push도커 허브 ID : hey0702프로젝트 이름 : anomaly-detection-frontend태그(버전) : 1.0도커 허브에서 확인 가능 6. AWS EC2 인스턴스 생성 AWS 콘솔 > EC2 서비스 > 인스턴스 > 인스턴스 시작 > 이름 지정 .. TIL#70(브라우저에 네이버 홈페이지 URL을 입력했을 때 일어나는 과정) 오늘 한일URL 입력:사용자가 웹 브라우저에 https://www.naver.com을 입력한다.DNS 조회:브라우저는 URL에 해당하는 IP 주소를 알아내기 위해 DNS 서버에 요청을 보낸다. 이 과정은 로컬 캐시에서 먼저 확인하고 없을 경우 DNS 서버에 질의하는 방식이다.예를 들어, www.naver.com의 IP 주소가 xxx.xxx.xxx.xxx로 변환된다.TCP 연결 설정 (3-Way Handshake):IP 주소를 얻은 후 브라우저는 네이버 서버에 접속하기 위해 TCP 연결을 설정한다. 이때 앞서 설명한 3-Way Handshake가 수행된다.HTTPS 요청 (SSL/TLS Handshake):네이버는 HTTPS를 사용하므로 보안 연결을 위해 SSL/TLS Handshake가 이루어진다. 이를.. TIL#69(프로세스와 쓰레드) 오늘 한일프로세스(Process)1. 정의 : 프로세스는 실행 중인 프로그램의 인스턴스이다. 운영 체제는 각 프로세스를 독립된 메모리 공간에서 실행하며, 프로세스는 CPU, 메모리, 파일 핸들, 네트워크 연결 등의 자원을 소유한다.2. 특징- 독립된 메모리 공간 : 각 프로세스는 운영 체제로부터 고유한 메모리 공간(주소 공간)을 할당받는다. 다른 프로세스의 메모리에 직접 접근할 수 없다.- 자원 관리 : 프로세스는 파일, 네트워크 연결 등 여러 자원을 소유하며 운영 체제는 이러한 자원을 각 프로세스에 대해 관리한다.- 오버헤드 : 새로운 프로세스를 생성하는 데는 많은 자원이 필요하며 프로세스 간의 통신(예: IPC, Inter-Process Communication)도 상대적으로 복잡하다. 쓰레드(Thr.. TIL#68(SQL JOIN) 오늘 한일JOINSQL에서 여러 테이블을 결합하여 데이터를 조회할 때 사용하는 연산이다. 여러 테이블에서 데이터를 연결해 하나의 결과로 가져오는 데 사용되며, 다양한 유형의 JOIN이 있다.1. INNER JOIN- 정의 : INNER JOIN은 두 테이블 간의 공통된 부분만을 결합하여 조회한다. 두 테이블에서 일치하는 레코드(즉, 조인 조건에 부합하는 레코드)만 결과에 포함된다.- 예시 : 학생(Student) 테이블과 수강(Enrollment) 테이블을 INNER JOIN으로 결합하면 수강을 신청한 학생들만 결과에 포함됩니다. 수강하지 않은 학생이나 등록된 학생이 아닌 수강 정보는 제외된다.2. LEFT JOIN- 정의 : LEFT JOIN은 왼쪽 테이블(첫 번째 테이블)의 모든 레코드를 포함하며 오.. TIL#67(Primary Key, Foreign Key, ER 모델) 오늘 한일Primary Key(기본 키)1. 정의 : Primary Key는 데이터 베이스 테이블에서 각 레코드를 고유하게 식별하는 데 사용되는 컬럼(혹은 컬럼들의 조합)이다. Primary Key의 값은 테이블 내에서 유일하며, 중복될 수 없고 NULL 값을 가질 수 없다.2. 역할 : 데이터 베이스 내에서 각 레코드를 구분하여 식별하는 역할을 한다.3. 예시 : 학생 테이블에서 Student_ID 라는 컬럼이 Primary Key로 지정되었다면 각 학생은 고유한 Student_ID를 가지며 이를 통해 테이블 내의 특정 학생을 식별할 수 있다. Foreign Key (외래 키)1. 정의 : Foreign Key는 한 테이블의 컬럼이 다른 테이블의 Primary Key를 참조하여 두 테이블 간의 관계를 .. TIL#66(이진 트리, 이진 검색 트리, 힙) 오늘 한일이진 트리 (Binary Tree)각 노드가 최대 두 개의 자식 노드를 가질 수 있는 트리 구조이다.특징- 모든 노드가 두 개 이하의 자식 노드를 가진다.- 완전히 균현 잡힌 트리, 편향 트리 등 다양한 형태가 있다.- 특정한 규칙이나 순서 없이 노드들이 배치될 수 있다. 이진 검색 트리 (Binary Search Tree, BST) 각 노드가 최대 두 개의 자식 노드를 가질 수 있는 트리 구조이다. 이진 트리의 각 노드는 왼쪽 자식과 오른쪽 자식에 대한 포인터를 가지고 있다.특징- 노드의 왼쪽 자식 노드는 항상 부모 노드보다 작고, 오른쪽 자식 노드는 부모 노드보다 크다.- 이 속성 때문에 이진 검색 트리는 효율적인 검색, 삽입, 삭제를 지원한다.- 평균적으로 검색, 삽입, 삭제의 시간 복잡도.. TIL#65(Array와 LinkedList, Stack과 Queue) 오늘 한일Array와 LinkedListArray : 배열은 동일한 데이터 타입의 요소들이 메모리 상에 연속적으로 저장된 자료구조이다.- 크기 : 배열의 크기는 초기화 시 결정되며, 이후에는 변경할 수 없다.- 접근 : 인덱스를 통해 O(1) 시간 복잡도로 요소에 빠르게 접근할 수 있다.- 메모리 : 고정된 크기 때문에 필요한 크기보다 큰 배열을 할당할 경우 메모리 낭비가 발생할 수 있다.- 삽입 / 삭제 : 중간에 삽입 / 삭제 시 O(n) 시간이 소요 되어 비효율적이다LinkedList : 연결 리스트는 각 요소가 노드로 구성되며, 각 노드는 데이터와 다음 노드에 대한 참조(포인터)를 포함하는 자료구조입니다. - 크기 : 필요에 따라 동적으로 크기를 조정할 수 있다.- 접근 : 특정 인덱스의 요소에.. TIL#64(정렬 알고리즘 JavaScript) 오늘 한일정렬 알고리즘다량한 방식으로 배열이나 리스트의 요소를 정렬하는 알고리즘 1. 선택 정렬 (Selection Sort)설명 : 선택 정렬은 리스트에서 가장 작은(또는 가장 큰) 항목을 찾아 정렬되지 않은 부분의 첫 번째 항목과 교환하는 과정을 반복한다. 이 과정은 리스트가 정렬될 때까지 계속된다.시간 복잡도 : O(n^2) 2. 버블 정렬 (Bubble Sort)설명 : 버블 정렬은 인접한 두 요소를 비교하여 필요에 따라 위치를 교환하며 리스트의 끝까지 반복하여 정렬하는 방식이다. 가장 큰 요소가 '거품'처럼 리스트의 끝으로 이동한다.시간 복잡도 : O(n^2) 3. 병합 정렬 (Merge Sort)설명 : 병합 정렬은 분할 정복 알고리즘의 일종으로, 리스트를 재귀적으로 두 부분으로 나눈 후, 각.. 이전 1 2 3 4 ··· 9 다음