분류 전체보기 130

[AWS] AWS에 대해 들어가기 전에 알아두면 좋은 개념

Regions(리전)데이터 센터의 집합이다.각각의 리전은 네트워크를 통해 연결된다.(= AWS의 사설 네트워크, 밑의 이미지에서 하얀색 선들)리전 선택에 영향을 미칠 수 있는 요인1. 법률준수 : 애플리케이션을 베포하게 될 대상 국가 내에 데이터가 보관되기를 원할 때가 있다)2. 지연 시간 : 사용자와 가까이에 있는 리전에서 출시하는 것이 지연시간이 줄어든다)3. 모든 리전이 모든 서비스를 가지고 있지 않다. : 애플리케이션을 출시하려는 리전에 해당 서비스가 있는지를 당연히 확인해야한다.)4. 요금 : 리전마다 요금이 다르기 때문에 리전 간 요금의 차이를 확인하려면 서비스 요금 페이지를 참고해야 한다.전 세계에 걸쳐 있고 밑의 사진을 참고해주세요.  Availability Zones(가용영역)여분의 전원..

[AWS] 클라우드 모니터링

Important Metrics(중요한 지표들)EC2 인스턴스에 대한 지표▼ 밑의 3가지 지표들은 모두 5분마다 제공되지만, 더 비싼 옵션인 Detailed Monitorin을 활성화하여 1분마다 해당 지표를 제공받을 수도 있다.-  CPU UtiliztionCPU가 현재 얼마나 사용되고 있으며 사용량이 늘어나면 인스턴스의 작업량이 과도하게 늘기 때문에 스케일 업이나 아웃이 필요하다는 판단을 할 수도 있다.-  Status ChecksEC2 인스턴스가 제대로 작동하는지 확인하는 지표이다.-  Network얼마나 많은 네트워크가 인스턴스 안팎에서 실행되고 있는지를 살펴보는 지표이다. EBS volumes에 대한 지표-  Disk Read/Writes디스크에 읽고 쓰는 정보를 알 수 있다. S3 bucket..

[AWS] Global Applications Architecture

1. Single Region, Single AZ하나의 리전에 한 AZ에 EC2 인스턴스가 있고 이는 가용성이 높지 않다.글로벌 지연 시간도 좋지 않다.리전에서 멀리 떨어진 사용자가 이 기관에 접근한다면 지연 시간은 높을 것이기 때문이다.  2. Single Region, Multi AZ하나의 리전에 여러개의 AZ가 있다면, 고가용성을 가진다.글로벌 지연 시간은 역시 좋지 않다.  3. Multi Region, Active-Passive하나의 리전에는 EC2 인스턴스가 액티브되거나 애플리케이션이 액티브 된다.(= 사용자가 어디에 있든지 액티브된 리전의 EC2 인스턴스에 읽고 쓸 수 있다는 뜻이다.)다른 EC2는 패시브이다. 액티브 리전과 패시브 리전 간 데이터 복제가 일어나 사용자는 패시브 리전에서 읽을..

[MYSQL] 시간 차이 구하는 방법 3가지

안녕하세요!제목 그대로 MYSQL에서 시간 차이를 구하는 방법 3가지를 간단하게 요약해보겠습니다. 밑의 코딩테스트 문제로 설명하겠습니다. 1. DATEDIFF 함수 사용두개의 날짜값의 차이를 int로 반환하는 함수이다.사용 방법DATEDIFF(날짜_1,날짜_2)DATEDIFF를 사용한 정답 :   2. TIMESTAMPDIFF 함수 사용두개의 날짜값의 차이를 unit에 들어가는 타입을 기준으로 반환하는 함수이다.unit 단위 기준 : second(초), minute(분), hour(시간), day(일), week(주), month(월), quarter(분기), year(연도)사용 방법TIMESTAMPDIFF(unit, 날짜_1,날짜_2)TIMESTAMPDIFF를 사용한 정답 :  2. 빼기 부호 사용빼기..

[AWS] 클라우드 통합

클라우드 통합에 대하여어느 시점에 가면 애플리케이션이 여러 개 생겨서 서로 통신이 이루어지게 된다.두 가지 패턴 타입으로 애플리케이션을 서로 통신하게 만들 수 있다.       1) 첫 번째, "동기식 통신"          : 애플리케이션이 다른 애플리케이션에 요청을 한다. 예를 들어, 뭔가를 구매하는 서비스를 만들어서 판매한 물품을 배송하는 서비스에 연결해야 된다고 보면 구매 서비스와 배송 서비스를 동시에 통합해야 한다. ( 서로 직접 요청을 주고 받으니깐)        1) 두 번째, "비동기식 또는 이벤트 기반"          : 예를 들어, 구매 서비스가 뭔가를 판매할 때마다 대기열에 주문을 올려두면 배송 서비스가 대기열에서 읽어들여 주문을 받을때, 밑의 이미지 예시에서 볼 수 있듯이 구매 서..

[git/github] 중요한 정보가 담긴 내용까지 git push 안 하고 싶을 때

안녕하세요!제목 그대로 비밀번호, 포트 번호 등 중요한 정보를 git 안하고 싶을 때 사용하는 방법입니다. 간단하게 요약해서 정리하겠습니다.  1. ".gitignore" 파일은 push해도 github에 업로드가 되지 않는다.   2. 최상위 폴더 밑에 ".env" 파일을 만들어서 숨기고 싶은 내용들을 담는다.  3. resources 파일 밑에 "application.yml" 파일을 만들어서 중요한 정보를 가리고 push한다.(밑의 이미지에서 $ 표시를 사용하여 중요한 정보를 어떤 식으로 가리는지 알겠죠?!)

[AWS] AWS 글로벌 인프라 활용

Global Applications in AWSRoute 53- 관리 DNS(도메인 이름 시스템)이다.- 사용자를 가까운 배포로 라우팅하여 지연 시간을 최소화하는 좋은 방법이다.- 재해 복구 전략을 정의할 때 유용하다.- 라우팅 정책   → 밑의 이미지의 1번째는 "단순 라우팅 정책"이다. 상태 확인을 하지 않는 정책이고 웹 브라우저는 DNS 시스템에 가서 DNS 검색을 하고 예를 들어, IPv4를 결과로 얻습니다.   → 밑의 이미지의 2번째는 "가중치 기반 라우팅 정책"이다. 트래픽을 여러 기관의 인스턴스에 분산한다. 예를 들어, 70, 20, 10이다. 그러면 DNS는 클라이언트가 트래픽의 70%가 첫번째로 가고, 20%가 두 번째로 가고, 나머지 10%가 세 번째로 가도록 합니다. 로드 밸런싱을 ..

[AWS] 대규모 배포 및 인프라 관리

Deployment(배포)CloudFormation- Infrastructure as Code를 가능하게 하며 거의 모든 AWS 리소스와 호환된다는 특징이 있다. - 템플릿을 제작하고 이를 이용하여 AWS에 인프라를 배포하는 데 사용할 수 있다.- AWS 인프라의 모든 리소스에 대해 윤곽을 잡아주는 선언적인 방식이기 때문에 AWS에서 중요한 기술이다.- 비용을 절약 할 수있다.    → 예시 : 어떤 환경에서 오후 5시에 모든 템플릿을 자동으로 삭제할 수 있습니다. 그럼 템플릿과 연결된 모든 리소스를 삭제하고 오전 9시나 8시에 안전하게 다시 만듭니다. 따라서 오후 5시와 오전 8시 사이에 리소스가 없기 때문에, 비용을 절약할 수 있게됩니다. - 밑의 이미지 설명 : 도식을 만들 만큼 똑똑하고 모든 구성..

[AWS] Lambda & Batch에 대하여 (+ Lightsail)

Lambda서버가 필요하지 않고 가상 함수를 가지게 된다.(단, 시간의 제한을 받기 때문에  짧은 유형의 실행을 위한 것이다.)수요에 따라 실행한다.(= 반응형 서비스이다.)요청 당 및 컴퓨팅 시간당 비용을 지불하게 되는데 프리 티어도 넉넉하다.매달 백만 개의 Lambda호출과 40만 GB-초의 컴퓨팅 시간을 준다.(= 괜찮은 서비스를 Lambda에서 공짜로 실행할 수있다는 뜻이다.)전체 AWS 서비스와 통합이 된다. (단, 이벤트 기반이라는 점이다.)함수당 리소스를 가져오기 쉽다.함수당 10GB의 RAM을 사용할 수 있는데 RAM을 증가하면 CPU와 네트워크 품질 역시 개선되고 모든 것이 좋다.실제 도커 컨테이너를 Lambda에서 실행하게 해주지만 컨테이너 이미지를 반드시 Lambda 런타임 API에 ..

[AWS] Docker(도커)

Docker앱 배포를 위한 소프트웨어 개발 플랫폼이다.도커를 사용하면 컨테이너에 앱을 패키징하게 된다.앱이 컨테이너에 패키징되면 어떤 기계든 상관없이 호환성 문제가 없고, 동작을 예측할 수 있다.작업량도 적으며 유지 보수와 배포가 쉽다.모든 프로그래밍 언어로 작업할 수 있고 운영체제나 기술에도 구해받지 않습니다.도커는 시각화 기술에 해당하지만 정확히는 아니고, 리소스를 호스트와 공유한다.(= 하나의 서버에 여러 컨테이너를 둘 수 있다.)  ECS(Elastic Container Service)도커 컨테이너를 실행할 때 사용한다.ECS에서는 반드시 우리가 프로비저닝해야 하고, 인프라를 자체적으로 유지해야 된다.(= EC2 인스턴스를 사전에 만들어야 한다.)밑의 이미지 설명 : 사전에 EC2 인스턴스를 만들..