목록분류 전체보기 (92)
개발일지

4장. EC2Amazon EC2(Elastic Compute Cloud) AWS에서 제공하는 가상 서버 서비스 서버 구축에 필요한 것들을 클라우드에서 임대하여 사용 가능 매니지드 서비스 X → OS, SW 설치 및 운영은 직접 해야 함 (IaaS) 설계적인 관점 필요 → 어떻게 구성하고 어느정도의 성능을 필요로 할지? 생성 및 삭제가 쉽고 자유롭다. → 확장성, 유연성 EC2 사용하기 주요 기능 인스턴스, AMI, 키페어, EBS, 보안 그룹, Elastic IP 인스턴스 설정 항목 AMI, 유형 및 크기, 리전, 네트워크(VPC), 서브넷, 스토리지(주로 EBS), 태그, 보안그룹 인스턴스 요금 = 인스턴스 사용량 + EBS 요금 + ..

1~3장. AWS/클라우드 기초 지식AWS 클라우드 특징인프라를 대여할 수 있다.종량제 요금 → 향후 고려없이 현재 필요한 만큼만 구축하면 됨초기 비용은 없지만 운영 비용 필요유동성 → 트래픽 변화 폭이 있는 서비스에서는 유용하지만, 변화가 크지않은 서비스에서는 그닥..? 클라우드와 클라우드 컴퓨팅클라우드(Cloud): 언제 어디서든 인터넷만 있으면 접속 가능한 환경클라우드 컴퓨팅: 클라우드에 구축된 인프라를 활용하는 서비스나 이를 사용하는 것 온프레미스(On-premises)자사가 서버를 구축하는 것온프레미스의 반대말은 클라우드가 아니다.온프레미스 ↔ 임대/공용클라우드 종류에 따라 달라짐공용 클라우드: 임대하는 클라우드 ex. AWS사설 클라우드: 자사에 구축하는 클라우드 클라우드 주요기술 - 가상화/..
개요인터넷 쇼핑몰이라고 가정한다면 상품 목록, 상세 보기 같이 모두가 접근할 수 있는 페이지가 있고 매출, 재고 관리 등 직원 전용 페이지가 있을 것이다. 이때 일반 유저는 직원 전용 페이지에 접근할 수 없어야한다. 같은 공지사항 페이지에서도 직원에게는 쓰기, 편집, 삭제 기능이 함께 노출되어야하고 일반 유저들은 읽기만 가능해야한다.이러한 상황에서 RBAC를 사용하면 이러한 권한을 효율적이고 체계적으로 관리할 수 있다. RBAC(Role-Based Access Control, 역할 기반 접근 제어)사용자에게 역할을 부여하고 역할에 따라 리소스 접근 권한을 제어하는 메커니즘 RBAC 구현하기일반 유저(user)와 직원(staff), 관리자(admin) 세가지 권한이 있다고 가정하자.export enum ..
개요누적 합 알고리즘을 이해하고 이를 사용해서 구간 합 문제를 시간초과 없이 해결해보자. 첫번째 요소는 무조건 0으로 시작합니다. (ex. prefixSum(0, 0), arr[0][0])prefixSum(i): arr[0]~arr[i] 누적합rangeSum(i, j): arr[i]~arr[j] 구간합, 2차원 배열의 경우 rangeSum(i1, j1, i2, j2) 누적 합/구간 합 이해하기1차원 배열 누적 합/구간 합구간 합다음과 같은 배열이 존재할 때 arr[3]부터 arr[5]까지의 합을 구해보자.rangeSum(3, 5)는 prefixSum(5)에서 prefixSum(2)을 뺀 값과 같다.rangeSum(i, j) = prefixSum(j) - prefixSum(i-1) 따라서, 구간합을 빠르게..

개요기존의 영상 업로드 기능은 단일 파일을 한번에 전송했었다. 하지만 단일 요청 방식은 다음과 같은 문제가 있었다.불안정한 네트워크로 전송이 끊겼을 경우 처음부터 다시 시작해야 한다.대용량 파일의 경우 업로드 속도가 너무 느리다.AWS S3는 한 번에 5GB까지만 업로드 가능하다. (+높은 화질 유지할 수 없음) 따라서, AWS 에서 제공하는 멀티파트 업로드를 사용해서 더 안정적이고 빠르게 업로드할 수 있도록 개선했다. 멀티파트 업로드 (Multipart Upload)멀티파트 업로드는 AWS에서 제공하는 기능으로 대용량 파일을 여러 청크로 나눠 동시에 또는 순차적으로 업로드할 수 있다. 멀티파트 업로드의 이점으로는병렬 처리가 가능하여 빠른 속도와 개선된 네트워크 대역폭을 제공한다.전송이 끊기더라도 중단..

🔗 https://www.acmicpc.net/problem/2579 동적 프로그래밍 - 타뷸레이션 방법을 사용했다. 문제 이해지켜야할 규칙은 다음과 같다.한 번에 한 계단 또는 두 계단을 오를 수 있다.연속된 세 계단을 밟을 수 없다. 마지막 도착 계단(20)을 기준으로 생각해보자. 이전 계단에서 해당 계단까지 올 수 있는 경로는 두 가지이다. 첫 번째는 이전 계단(10)을 밟지 않고 한 번에 두 계단을 오르는 경우이다. 두 번째는 이전 계단(10)을 밟을 경우다. 이 경우에는 전전 계단(25)을 밟게 되면 세 계단(25-10-20)을 연속으로 밟게 되므로 규칙을 위반하게 된다. (파란 경로) 따라서 전전전 계단(15)에서 두 계단 → 한 계단씩 오를 수 있어야한다. (빨간 경로) 구현let..
알고리즘 문제를 풀려면 배열은 필수적으로 사용하게 된다.아무리 봐도 맞는 로직인데 답이 이상해서 보면 배열 문제였던 경우가 많았다. 그 과정에서 알게 된 JS 배열의 특성들을 기록하고자 한다.Array().fill() vs. Array.from() - 2차원 배열 만들기let arr1 = Array(3).fill([]);arr1[0].push('a');arr1[1].push('b');arr1[2].push('c');console.log(arr1); // [["a", "b", "c"], ["a", "b", "c"], ["a", "b", "c"]]Array(3).fill([]).fill([])은 전부 동일한 객체를 채운다. (js에서는 배열도 객체다.)즉, arr1[0], arr1[1], arr1[2] 모두..