반응형

서버 8

EC2 관련 정리

> 기계적으로 서버를 만들고 관리하고 있었는데 과정 및 정보들을 기록해본다. (계속 사이드 플젝 진행하면서 오호라 하는 것들을 넣을 것이다.) > 현재 내가 있는 곳 서버는 EC2 - K8S - Node로 구성되어 있다. EC2 보안그룹 설정 하기 > EC2 인스턴스로 들어오고 나가는 트래픽에 대한 규칙을 정하고 제어할 수 있게 한다. (Ex: SSH 접속 포트인 22에 대해서는 특정 개발자의 IP에 대해서만 풀어주거나 http port인 80과 https port인 443에 대해서는 접속 IP 제한을 전부 풀어주게 할 수 있다.) 인바운드 규칙 : 외부에서 인스턴스로 들어오는 리퀘스트에 대한 규칙을 설정해주는 곳으로 유형은 HTTP, HTTPS, SSH 등이 있고 이에 따라 프로토콜, 포트가 설정된다...

서버 2022.01.16

Webpack부터 Kubernetes까지 (2) - gulp와 webpack의 차이

- 이전 플젝에선 Webpack을 사용하다가 다음 회사에서 Kubernetes를 사용하게 됨에 따라 공부하던 와중 webpack을 근본적으로 왜 사용하게 됐을 까를 알기 위해 정리함. (이를 위해 앞의 1에서 stream에 대한 개념을 잡았다.) task runners / package bundler와의 차이 Package Bundler : 종속성을 가진 어플리케이션 모듈을 정적인 소스로 재생산 Task Runner : 반복 가능한 특정 작업들을 단순 자동화한 것 즉 소스들을 하나의 패키지화 하는 것이 Webpack이고 Gulp는 미리 정의해 놓은 어떠한 작업들 (배포, 테스트와 같은)을 자동화하여 실행하는 것임 - node.js 기반의 task runners로 자동화된 빌드 툴로 알면 된다. 이 때 n..

서버 2021.03.11

Webpack부터 Kubernetes까지 (1) - Stream과 Node

- python, typescript로 개발되었던 기존 프로젝트에서는 webpack을 통해 개발, 관리되었음. 그리고 이제 node기반 typescript로 이루어진 개발 프로젝트에 붙게 되면서 typescript, node 공부를 하면서 이것저것 하다가 습관적으로 kubernetes로 관리된다고 하셨던 말을 까먹고 webpack으로 개발하다가 다시 엎어야하는 것을 기념삼아 정리함 - 공부하면서 쿠버네티스랑 차이점이 궁금하면서 생각해보니 webpack이 구체적으로 어떻게 돌아가는지 궁금해짐 -> 그러면서 gulp랑은 또 차이가 뭐지 궁금해짐 -> 일단 대충 찾아보니 gulp 방식이 stream 방식이네 이거 지금 공부하는 node에도 나오에도 나오던데 - 정리 순서 노드의 stream 그렇다면 gulp..

서버 2021.03.11

Node Express Module

- 일단 테스트 Project을 간단히 만들기 위해 Express를 통하여 web project 생성 - Express 모듈 : 웹 어플리케이션을 개발할 때 가장 대중적으로 사용되고 있는 모듈이고 http 모듈에 비해 기능이 많음 + jade, ejs 같은 동적 웹 페이지 파일을 지원하고 있음 - express 기본 기능 express() : express 모듈에서 제공하는 기능을 사용할 수 있는 객체를 반환하는 함수 @get / @post : get/post 방식으로 요청이 발생했을 때 호출될 함수를 등록 listen() : 서버 가동 - 라우팅? 사용자 요청에 따라 응답 결과를 달리 전달하는 것을 라우팅이라고 한다. app.get("/page", function(req, res){ res.render..

서버 2021.03.09

node js 시작하며

비동기식 이벤트 처리 : 비동기식으로 동시에 처리가 된다. - 그래서 multi thread인가 찾아보니 node 내부적으로 여러 thread를 가지고 있지만 javascript 자체가 싱글스레드 기반이기 때문에 일반적으로 node도 single thread라고 한다고 함 - 즉 이벤트 IO들을 비동기로 처리하여 빠르게 처리하지만 Single thread 기반으로 함으로써 Multi thread가 가지는 문제로부터 자유롭다고 할 수 있음 코드 처리가 상당히 빠르다. 데이터를 주고 받을 때 버퍼링 방식을 사용하지 않기 때문에 거치는 곳이 없어 더 빠르게 처리 가능하다. - 비동기 이벤트 처리 원리 : node.js의 비동기 처리는 이벤트 방식으로 풀어낸다. 클라이언트 리퀘스트를 비동기로 처리하기 위해 이벤..

서버 2021.03.08

[DRF] REST & REST API

- Django REST Framework 를 새로운 프로젝트에 사용하게 됐는데 이 전에 항상 말로만, 어렴풋이만 알고 있던 REST에 대해 확실히 잡고 가고자 한다. - 우선 지금 프로젝트에 DRF를 쓰고자 하는 이유는 크게 아래와 같다. ~ 기존 Web홈페이지, Basecamp에서 상품에 예약(구매)을 추가할 수 있었던 것을 네이버, 마이리얼트립 등 다양한 플랫폼에 이제 상품을 올려 예약을 받게 되면서 예약 Request가 들어오는 경로가 다양해져 REST를 통해 프론트엔드와 백엔드의 구분히 명확하게 필요해졌다. ~ Request들어오는 플랫폼이 다양해지면서 백엔드가 업데이트되더라도 프론트와 완전히 분리될 필요가 생김 - 구조 ~ cloud 사진 참고 - REST (Representational St..

서버 2020.01.19

Web Server 그리고 WAS

√ 시작하기 앞서 필요한 개념 - Static Page & Dynamic Page : Static Page는 Web Server가 경로를 받아 일치하는 File Contents를 로드한다. (JS, Images, Html) 즉 항상 동일한 페이지를 구현하며 Dynamic Page는 Parameter에 맞는 페이지 내용을 구현한다. √ Web Server - 정의 : 하드 웨어 : Web Server가 설치되어 있는 컴퓨터 소프트 웨어 : 웹 브라우저 클라이언트로부터 HTTP 요청을 받아 Static Contents를 제공하는 프로그램 - 기능 : WAS를 거치지 않고 바로 Static Contents를 제공한다. Static Contents에 대한 Request는 처리하고 Dynamic Request는 ..

서버 2019.11.18

쿠키(Cookie)&세션(Session)&캐시(Cashe)

˙ 시작하기 앞서 필요한 개념 - 기본적으로 Http는 stateless, connectionless 프로토콜의 특징을 가지고 있다. 즉 클라이언트가 서버에 요청(Request)를 했을 때 해당 요청에 대한 응답(Response)를 하고 연결을 끊어 이전의 데이터를 가지고 있지 않는다 (Http 1.1부터는 Keep-alive값으로 연결을 유지하고 값을 가지고 있게 Default로 설정되어 있다.) - 이에 대해 정보를 계속 유지하고 가지고 있기 위해 고안된 방법이 캐쉬, 쿠키 그리고 세션이다 ˙쿠키 - 사용자의 브라우저에 기본적으로 저장이 되고 통신시 HTTP헤더에 저장되어 있는 데이터 - 쿠키란 클라이언트 측에 저장되는 데이터로 클라이언트가 서버에 요청할 때 쿠키 정보를 전부 전달하게 되고 서버가 이..

서버 2019.11.17
반응형