분류 전체보기
[AWS 6] Route 53을 이용하여 도메인 적용하기
지금까지의 프로젝트 결과로 클라우드 인스턴스에 서버를 설치하였고 사용자는 퍼블릭 IP/도메인:3000을 통해 서비스를 제공받을 수 있게 되었습니다. 그렇지만 사람들이 긴 주소명을 외우기는 쉽지 않겠죠. 그래서 이번 포스팅에서는 www.naver.com처럼 도메인 이름을 간단하게 설정해보겠습니다. DNS(Domain Name System)를 사용해야합니다. DNS는 사람이 읽을 수 있는 도메인 이름(예: www.naver.com)을)을 머신이 읽을 수 있는 IP 주소(예: 192.0.2.44)로 변환해줍니다. DNS가 트래픽을 웹 애플리케이션에 라우팅하는 과정은 다음과 같습니다. 1. 그림과 같이 PC 브라우저에서 www.naver.com을 입력합니다. 그러면 PC는 미리 설정되어 있는 DNS (단말에 설..
[AWS 5] EC2 인스턴스와 RDS 데이터베이스 연동하기
AWS의 RDS 서비스를 이용하면 클라우드에서 데이터베이스 확장이 용이하고, 전문적인 업체가 보안 및 관리를 담당하기 때문에 유지하기 쉬워진다는 것이 장점입니다. 이번 포스팅에는 AWS의 RDS 서비스를 통해 클라우드 데이터베이스를 구축하고, EC2의 인스턴스와 연결해보도록 하겠습니다. 1) 데이터베이스를 생성하기 전에 해야하는 작업들이 있습니다. 데이터베이스를 생성할 때 입력해야되는 EC2 보안 그룹, 서브넷 그룹을 설정하는 과정입니다. 연결할 인스턴스의 가용 영역, 보안 그룹 이름을 기억한 뒤에 해당 인스턴스를 클릭합니다. 서브넷은 VPC 보다 작고, EC2 인스턴스들을 묶어놓은 단위를 말합니다. 2) 인스턴스의 VPC ID, 서브넷 ID를 기억합니다. 3) 보안 그룹 탭으로 이동한 뒤, 보안 그룹 ..
[AWS 4] S3 서비스 적용하기
이번 포스팅에서는 AWS S3 서비스 프로젝트에 적용시켜보겠습니다. 지금까지 제 프로젝트에서는 서버 컴퓨터 디렉토리에 이미지, 오디오 파일을 같이 관리하고 있었습니다. 이 경우에, 만약 예상치 못한 사건이 발생해서 파일들이 삭제가 될 수가 있다는 문제점이 있습니다. 동일한 데이터를 다른 컴퓨터에서 참조해야한다면 데이터 무결성을 관리해야된다는 문제도 있었습니다. 하지만 이러한 이슈들은 AWS의 S3 서비스를 사용한다면 해결할 수 있습니다. 클라우드 저장소에 파일들을 업로드 함으로써 데이터들을 안전하게 관리 및 참조할 수 있습니다. 사용법은 매우 간단합니다. https://s3.console.aws.amazon.com/s3/home?region=ap-northeast-2 s3.console.aws.amazo..
[AWS 3] git, node.js 환경 구축하기
이번 글에서는 생성된 우분투 인스턴스에서 웹 서비스를 배포하는 것이 목표입니다. 그렇기 위해서 git과 node.js를 설치하고 코드를 실행시키는 과정을 작성해보겠습니다. 우선 PuTTY를 통해 우분투 인스턴스에 접속하겠습니다. $ sudo apt-get update 1) 명령어를 실행하여 현재 우분투 관리하고 있는 소프트웨어들을 최신 버전으로 업데이트 시켜줍니다. $ sudo apt-get install git 1) 명령어를 실행하여 git을 설치해줍니다. $ git --version 1) 명령어를 실행하여 깃이 설치되었는지 확인합니다. cheonseungmin/portfolio 기술 스택을 소개하는 웹 페이지 개발. Contribute to cheonseungmin/portfolio developme..
[AWS 2] EC2 우분투 인스턴스 생성하기
지금부터는 본격적으로 환경 구축 실습을 시작해보도록 하겠습니다. 사용자들에게 서비스를 배포하려면 무엇이 필요할까? 우선 파일이 저장되어있고 서버 코드를 실행할 수 있는 서버 컴퓨터가 필요할 것이다. 서버를 위해 로컬 컴퓨터를 준비한 뒤 파일 및 데이터를 저장시켜놓고, 포트포워딩을 통해 사용자의 요청을 처리할 수 있을 것이다. 지금까지의 나도 그렇게 토이 프로젝트들을 준비했었다. 그렇지만 접속자가 늘어날 수록 학생 및 스타트업에게는 인프라 구축을 위한 비용이 많이 까다로울 수 있다. 그래서 이를 해결하기 위한 것이 AWS의 EC2(Elastic Compute Cloud) 서비스이다. 아마존 클라우드 서버 호스팅 | Amazon Web Services 다양한 구매 모델 온디맨드, 스팟 인스턴스, Saving..
[AWS 1] AWS(Amazon Web Service) 개요
프로그래밍을 직업으로 삼는 사람이라면 아마존 웹 서비스(AWS: Amazon Web Services)에 대해서 한번쯤은 들어봤을 것이다. 아마존에서 처음부터 클라우드 서비스 플랫폼을 만들 생각을 하고 있던 것은 아니었다고 한다. 2000년도 초반 인터넷 쇼핑몰을 운영하던 아마존은 늘어난 트래픽과 주문량을 감당하기 위해서 굉장히 뛰어난 수준의 내부 인프라 시스템을 구축하게 되었다. 그러다가 컴퓨팅, 스토리지, 데이터베이스 등 운영 서버에 필요한 인프라를 누구보다 안정적이고 저렴하게 운영할 수 있는 능력을 아마존 쇼핑몰 하나가 아닌 전 세계 모든 회사를 대상으로 제공하자는 생각을 하게 됐고, 2006년부터 EC2를 서비스하기 시작했다. 아마존 웹 서비스는 아마존 닷컴의 클라우드 컴퓨팅 사업부다. 아마존 웹 ..
[AWS 0] 프로젝트 개요
GS SHOP 직무 면접 중에 내가 프론트엔드 개발자가 되기 위해 어떠한 준비들을 해왔는지에 대해 강조했다. 그런데 면접관님께서 말씀하셨다. "그럼 프론트엔드 개발자만 하실 건가요?" 생각치도 못한 질문에 머리를 한 대 얻어맞은 기분이 들었다. 지원 자격과 우대사항에서 프론트엔드, 백엔드에 대해 공고했기 때문에 그 분야에 대해서만 강점을 내세우고 있었기 때문이다. 일단 그 순간에는 당황한 나머지 제가 왜 프론트엔드 개발자를 목표로 삼았는지에 대해서 횡설수설 했던 것 같다. 그러자 면접관님께서는 "신입이면 다양한 경험을 해보는게 좋을텐데.. " 혼잣말을 하며 넘어가셨다. 면접이 다른 지원자와 진행되는 동안 내 마음을 진정시켰다. 곰곰히 생각해보니까 면접관님들께서 프론트, 백엔드 분야가 아니라 인프라 플랫폼..
HTML 문서 렌더링
옛날부터 HTML 파일이 어떻게 렌더링 되는지에 대해서 궁금증만 있었지 제대로 알아본 적은 없었다. 프론트엔드 개발자로서 더 이상 넘어갈 수 없다. 이번 글을 통해서 브라우저의 HTML 렌더링 순서를 각 잡고 정리해보겠다. 1. 불러오기 로더(Loader)가 서버로부터 전달 받는 리소스 스트림을 읽는 과정. 읽으면서 어떤 파일인지, 데이터인지 파일을 다운로드할 것인지 등을 결정한다. 2. 파싱 (Phasing) 브라우저 웹 엔진이 가지고 있는 HTML/XML 파서가 문서를 파싱해서 DOM Tree를 만든다. -> 순서로 파싱이 진행한다. 그런데 만약 내부의 , 태그를 만나게 된다면 해당 파일이 로드, 파싱이 완료 될 때까지 HTML의 파싱이 중단된다. 이는 DOM 트리가 만들어지는 것을 지연시키기 때문에..