전체 게시물
-
[AWS] ASG & ELB 실습 가이드aws 2025. 3. 7. 01:48
본 게시물은 AWS ASG(Auto Scaling Group)와 ELB(Elastic Load Balanacer)를 이용하여 EC2 인스턴스를 자동으로 생성하고 트래픽을 분산하는 실습 합니다. 실습의 최종 결과물은 다음과 같습니다. 1. ASG와 ELB 개요1.1 Auto Scaling Group(ASG)이란?ASG(Auto Scaling Group)는 EC2 인스턴스를 자동으로 확장(Scale-out) 또는 축소(Scale-in)하여 트래픽 부하에 따라 가용성을 유지하는 서비스입니다. 특정 조건을 설정하면 ASG가 자동으로 인스턴스를 추가하거나 삭제합니다.1.2 Elastic Load Balancer(ELB)란?ELB는 여러 개의 EC2 인스턴스에 트래픽을 균등하게 분산하는 역할을 합니다. ASG와 함..
-
[AWS] 다중 AZ(Multi-AZ)로 구성한 Amazon RDS는 EBS를 공유할 수 없다.aws 2025. 2. 27. 20:30
AWS에서는 관계형 데이터베이스 서비스로 Amazon RDS와 Amazon Aurora RDS를 제공합니다. 이 두 서비스는 모두 AWS에서 관리하는 RDS 서비스이지만, 내부 아키텍처 및 동작 방식에서 차이점이 존재합니다.Amazon RDS : 기존의 RDBMS(ex. MySQL, PostgreSQL)를 관리형 서비스로 제공하며, 싱글 AZ 및 다중 AZ를 제공합니다.Amazon Aurora RDS : AWS에서 개발한 고성능 DB로, 스토리지 계층을 공유하며 자동 확장되는 구조를 가집니다.본 글에서는 Amazon RDS에 대해서 설명하며 Aurora RDS와의 차이점에 대한 설명은 포함하지 않습니다. 1. Amazon RDSAmazon RDS는 AWS가 제공하는 관리형 데이터베이스 서비스입니다. My..
-
[자바] 최소 공배수(LCM) 구하는 방법코딩테스트 2025. 1. 31. 10:45
a*b static int lcm(int a, int b) { return (a * b) / gcd(a, b);}static int gcd(int a, int b) { if (b == 0) { return a; } return gcd(b, a % b);} 만약 a*b > 2,147,483,647 이라면 나눗셈을 먼저하고 곱셈을 하면 된다.static int lcm(int a, int b) { return (a / gcd(a, b)) * b;}static int gcd(int a, int b) { if (b == 0) { return a; } return gcd(b, a % b);}
-
[자바] 소수를 판단하는 근거알고리즘(algorithm) 2025. 1. 30. 15:09
입력받은 숫자가 소수인지 판단하는 근거는 다음과 같다.숫자 1은 소수가 아니다.약수로 1과 자기 자신의 값만 갖는다. 예를 들어, 숫자 13의 약수는 1과 13이므로 소수이다. 위 조건에 맞춰 자바 코드를 작성할 수 있다.static boolean isPrimeNumber(int num) { if (num == 1) { return false; } for (int i = 2; i 그러나 위 방법으로 소수를 판단하게 되면 소요 시간이 길다는 단점이 있다. 만약 num이 소수이면서 매우 큰 수라면 반복문 수행 시간이 너무 길어지기 때문에 비효율이 존재한다. 반복문 소요 시간을 줄이기 위해 소수를 판단하는 근거를 새로 설정한다.숫자 1은 소수가 아니다.숫자 2는 짝수 중에서 유일..
-
[자바] 백준 22856: 트리 순회코딩테스트 2025. 1. 27. 15:24
1. 문제https://www.acmicpc.net/problem/22856 2. 문제 접근법2-1. 중위 순회란?중위 순회는 왼쪽 노드 -> 부모 노드 -> 오른쪽 노드 순서대로 방문한다.따라서 그림 1의 그래프가 존재할 때, 중위 순회 결과는 D -> B -> F -> E -> G -> A -> C이다. 그림 2의 중위 순회 결과 : 4 -> 2 -> 5 -> 1 -> 6 -> 7 -> 32-2. 중위 순회에서 마지막으로 방문할 노드 찾기그림 1의 마지막 노드 : C그림 2의 마지막 노드 : 3 중위 순회 시에 마지막으로 방문할 노드를 구하는 자바 코드이다. v : 현재 노드(부모 노드)nodes.get(v).get(0) : 왼쪽 자식 노드nodes.get(v).get(1) : 오른쪽 자식 노드아래..
-
[자바] 백준 15787: 기차가 어둠을 헤치고 은하수를, 2가지 풀이(비트마스킹, 문자열)코딩테스트 2025. 1. 15. 18:31
https://www.acmicpc.net/problem/15787 본 글에서는 비트 마스킹과 문자열로 푸는 방법을 설명한다. 난 처음에 문자열을 사용하여 어렵지 않게 코드를 작성하였는데, 구글링을 해보니 비트 마스킹을 사용하여 대부분이 해결하고 있었다. 비트 마스킹을 처음 접한다면 이해가 어려울 수 있겠지만, 어렵다고 포기하지 말고 다른 글도 참고하면서 이해해 보도록 하자. (나도 비트 마스킹은 처음 알았고, 손으로 그려가며 이해했다.) 방법 1: StringBuilder를 사용한다.나는 문자열을 사용하여 코드를 작성했는데, String이 아닌 StringBuilder를 사용했다. 자바에서는 String 클래스의 경우 불변 객체이고, StringBuilder는 가변 객체이다. 따라서 String 객..