서비스 구성도EC2 인스턴스 생성 및 접속EC2에 Node.js, Express 설치Node.jsExpressVim 환경 설정웹서버 띄우기EC2 인바운드 규칙 추가(3000번 포트)Express Generator로 애플리케이션 코드 생성API틀 만들기웹페이지 작성AWS SDK for JS 설치서버에서 받은 이미지 파일 S3에 저장 서버에 있는 페이지 웹페이지에 보여주기 Cloud Front 연동Node.js 프로세스 매니저 pm2 설치 및 자동 시작 설정 ELB 설정Auto Scaling 설정
EC2 (Elastic Compute Cloud)클라우드에서 탄력적으로 컴퓨팅 자원을 제공해주는 서비스이다.EC2는 가상 머신을 인터넷을 통해서 제공해주는 서비스이기 때문에 가상 서버 서비스라고 부른다.또한 리소스를 재구성이 가능하다는 특징이 있어서, 인스턴스가 생성 된 이후에도 성능을 올리거나 내릴 수 있다. 이러한 특징 덕분에 쉽게 컴퓨팅 용량을 확장하거나 축소 할 수 있다.EC2는 다양한 인스턴스 타입도 제공을 하며 사용한 만큼만 과금한다.특징가상 서버 서비스재구성이 가능한 컴퓨팅 리소스쉽게 확장/축소되는 컴퓨팅 용량용도에 따른 다양한 인스턴스 타입 제공사용한 만큼만 과금EC2의 다양한 타입M : 컴퓨팅, 메모리, 네트워크 리소스를 균형적으로 사용할 수 있는 범용 인스턴스 타입C : 최고 성능의 프..
클라우드 컴퓨팅이란?클라우드 컴퓨팅은 IT자원을 인터넷을 통해 제공하고 사용한 만큼만 비용을 지불하는 것을말한다.물리적 데이터 센터와 서버를 구입, 소유 및 유지 관리하는 대신 클라우드 공급자로부터 필요에 따라 컴퓨팅 파워, 스토리지, 데이터 베이스와 같은 기술 서비스를 사용할 수 있다.리전, 가용영역, 엣지 로케이션이란?리전 : 서비스들이 제공되는 서버의 물리적인 국가/도시 단위의 위치기영영역 : 논리적 데이터 센터의 각 그룹/ 각 리전 안의 데이터 센터엣지 로케이션 : 여러 서비스들을 가장 빠른 속도로 제공하기 위한 거점클라우드의 4가지 종류On Premises서버 구축 부터 하드웨어까지 모든것을 직접 하는 것. IaaS (Infrastructure as a Service)가상화 기술과 물리적 자원,..
해당 프로젝트는 OZ코딩스쿨 수준별반 수업(심화반)을 통해 제작되는 프로젝트의 해결하는 과정의 기록입니다.진행 환경OS : Intel Mac VenturaIDE : Visual Studio Code 주제 : 테스트를 위한 dummy data 만들기(MySQL)상황MySQL의 Database에 14개의 테이블을 생성함.Table만 만든 상태라서 테스트를 위해 더미데이터를 테이블 별로 1000개~2만개 사이로 세팅해달라는 요청을 받음테이블 별로 데이터를 몇 건 씩 세팅할지 지정할 수 있어야함.더미데이터 생성시마다 데이터를 전부 삭제하고 새로 세팅할지, 추가할지를 지정할 수 있어야함.가이드 (힌트)sqlalchemy의 MetaData()를 이용하세요. metadata.reflect() 을 이용하면 현재 접속한..
오류내용 :./gradlew build Task : test FAILEDgradle을 이용해서 build를 진행하던 중 오류가 발생했다....난 분명히 강사님의 코드를 따라친 죄밖에 없는 거 같은데 뭐지... 검색을 해보자...해결과정 [JUnit4][Error] 실행 시 initailizationError 해결 방법에러 JUnit 실행 시 initailizationError 발생 원인 1. ControllerTest에 @ContextConfiguration 선언을 안 한 경우. 2. classes 선언을 main 폴더 아래의 Application 이름으로 선언하지 않은 경우. (test 폴더 아래 Applicationback.tistory.comJUnit과 관련된 오류라는 블로그 글을 발견했다.그런데 ..
프로젝트 개요심리테스트를 진행 할수 있는 파이썬 기반의 웹 어플리케이션을 구동하는 코드로 질문을 추가,수정 및 업데이트 할 수 있으며 테스트 참여자의 결과와 일일 참여자 수를 볼수 있다.Dependencypoetry : package 관리를 위한 라이브러리flask : 웹 페이지 제작을 위한 웹 프레임 워크flask-sqlalchemy : ORM방식으로 데이터 베이스 조작을 위한 라이브러리flask-mysqldb : 데이터 베이스와 flask 연결을 위한 라이브러리flask-migrate : 데이터 베이스 관리를 돕는 라이브러리pandas : 참여자의 결과를 분석하기 위해 사용되는 라이브러리plotly : 참여자의 결과를 시각화 하기위한 라이브러리프로젝트 구조database.pyfrom flask_sql..
MSA란?마이크로 서비스 아키텍처(MSA)란 작고 독릭적인 서비스들의 집합으로 구성된 애플리케이션 구조를 말한다.즉, 하나의 애플리케이션을 구분 가능한 여러 개의 작은 서비스로 나눠 사용잘의 요청을 처리하는 구조이다.MSA는 하나의 큰 어플리케이션을 여러개의 작은 어플리케이션으로 쪼개 변경과 조합이 가능하도록 만드는 것으로작은 레고 블록을 조립해 최종 결과물을 만드는 형태라고 볼 수 있다.모놀리식 아키텍쳐 vs 마이크로 아키텍처모놀리식 아키텍쳐(Monolithic Architecture)전통적인 개발 상식으로 하나의 프로젝트에 모든 기능을 포함하는 방식을 말한다.모놀리식 아텍처는 전체 애플리케이션을 묶어서 개발하기 때문에, 여러개의 비지느스 로직이 추가 되면 코드베이스가 커지는 구조이다.코드 베이스가 커..
리눅스 환경에는 리소스들을 확인할 수 있는 다양한 명령어들이 있다.이 명령어 들에 대해서 알아보자!uname시스템과 커널의 정보를 확인할 수 있는 명령어이다.uname [option]Option[-a, --all] : 전체 내용 출력[-s, --kernel-name] : 커널 명 출력[-n, --nodename] : 네트워크 노드의 호스트 명 출력[-r, --kernel-release] : 커널 릴리즈 정보 출력[-v, -kernel-version] : 커널 버전 출력[-m, --machine] : 머신 하드웨어 이름 출력[-p, --processor] : 프로세서 종류 또는 'unknown' 출력[-i,- -hardware-platform ] : 하드웨어 플랫폼 또는 'unknown' 출력[-o, --..