9 주차 [ WIL ]

2023. 8. 14. 04:46TIL&WIL/WIL

이번주에 알게된 것

 

1. 쿠키와 세션 :

https://muyeon95.tistory.com/239

 

쿠키와 세션

HTTP HTTP 는 클라이언트와 서버 사이에 이루어지는 요청-응답 프로토콜 이다. HTTP 는 두가지 특징을 가지고 있다. - 비연결성(Connectionless) - 무상태성(Stateless) 비연결성은 연결을 맺은 서버-클라이

muyeon95.tistory.com

 

 

2. TCP 와 UDP : 

https://muyeon95.tistory.com/240

 

TCP와 UDP

TCP 인터넷상에서 데이터를 메시지의 형태로 보내기 위해 IP 와 함께 사용하는 프로토콜 특징 - 연결 지향 방식으로 패킷 교환 방식을 사용한다.(패킷을 전송하기 위한 논리적 경로로 배정) - 3-way

muyeon95.tistory.com

 

 

3. HTTP 와 HTTPS 의 차이점 : 

https://muyeon95.tistory.com/241

 

HTTP 와 HTTPS 차이점

HTTP와 HTTPS 의 차이점 https 는 SSL 인증서를 사용하는 http 이다. SSL 인증서는 일반 http 요청 및 응답을 암호화 한다. 따라서 https 는 http 보다 더 안전한 보안용 프로토콜 이라고 할 수 있다. http와 http

muyeon95.tistory.com

 

 

4. AWS 볼륨 증설하기 : 

https://muyeon95.tistory.com/248

 

AWS EC2 멈춤 현상 (볼륨 증설하기)

swap 을 사용해 볼륨을 증설하자! sudo dd if=/dev/zero of=/root/swapfile bs=1k count=2000000 conv=excl 1MB 인 블럭, 개수가 2000K 인 빈 파일을 만든다. 즉 2GB 확보 sudo chmod 600 /root/swapfile swapfile 권한 부여 sudo mkswap /ro

muyeon95.tistory.com

 

 

5. IoC, DI : 

https://muyeon95.tistory.com/250

 

IoC, DI [Nest.js]

provider - provider 는 nest.js 의 기본 개념 - 대부분의 nest 클래스는 service, repository, factory, helper 등 provider 로 취급 될 수 있다. - provider 의 주요 아이디어는 dependency 로 주입할 수 있다. - dependency 로 주

muyeon95.tistory.com

 

 

6. Docker : 

https://muyeon95.tistory.com/245

 

ubuntu 도커 백그라운드 실행 & 로그 명령어

아래와 같은 명령어를 입력해서 터미널이 안나가진다면? sudo docker run -p 3000:3000 :latest 다른 새 터미널을 열어서 아래의 명령어를 입력한다. sudo docker stop [컨테이너 ID] 백그라운드 실행 명령어 sudo

muyeon95.tistory.com

https://muyeon95.tistory.com/251

 

Docker nGrinder 사용

docker pull ngrinder/controller:3.5.5-p1 docker run -d -v ~/ngrinder-controller:/opt/ngrinder-controller --name controller -p 80:80 -p 16001:16001 -p 12000-12009:12000-12009 ngrinder/controller:3.5.5-p1 docker pull ngrinder/agent:3.5.5-p1 docker run -d --n

muyeon95.tistory.com

https://muyeon95.tistory.com/252

 

EC2 ubuntu 인스턴스에 Docker 설치하고 app 띄우기

EC2 인스턴스 생성후 세팅 우분투 접속 sudo -i ubuntu@ 우분투 업데이트 sudo apt-get update HTTPS 를 통해 안전하게 다운로드 하기 위한 리포지토리 추가 sudo apt-get install apt-transport-https ca-certificates curl gnup

muyeon95.tistory.com

https://muyeon95.tistory.com/257

 

EC2 ubuntu 인스턴스 & Docker compose & Docker hub

EC2 인스턴스를 ubuntu 로 생성한다. https://muyeon95.tistory.com/187 AWS EC2 배포하기 선행작업 https://muyeon95.tistory.com/186 github SSH Repository [ git ] - 우선 repository 를 생성한다. - SSH 키를 발급받는다. 생성한 rep

muyeon95.tistory.com

https://muyeon95.tistory.com/258

 

ubuntu Docker 설치

ubuntu 시스템 패키지 업데이트 sudo apt-get update 필요한 패키지 설치 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common Docker 공식 GPG 키를 추가 curl -fsSL https://download.docker.c

muyeon95.tistory.com

https://muyeon95.tistory.com/259

 

ubuntu Docker compose 설치

사용 이유 여러 개의 도커 컨테이너를 하나의 어플리케이션을 구성하기 위해 사용 도커 컴포즈 설치 sudo curl -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/l

muyeon95.tistory.com

https://muyeon95.tistory.com/260

 

docker 자주쓰는 명령어

자주 쓰이는 컨테이너 옵션 -ddetached mode 흔히 말하는 백그라운드, 데몬 모드 -p호스트PC와 컨테이너의 포트를 연결 (포워딩) -e컨테이너 내에서 사용할 환경변수 설정 –name컨테이너 이름 설정 –r

muyeon95.tistory.com

 

 

7. 에러 정리 : 

https://muyeon95.tistory.com/242

https://muyeon95.tistory.com/243

https://muyeon95.tistory.com/244

https://muyeon95.tistory.com/246

https://muyeon95.tistory.com/247

https://muyeon95.tistory.com/249

https://muyeon95.tistory.com/254

https://muyeon95.tistory.com/255

https://muyeon95.tistory.com/256

 


TIL 회고

 

1. 쿠키와 세션 : 

 

쿠키와 세션에 대해 되세기는 시간을 가졌다.

쿠키는 클라이언트 측에 보관되고 세션은 서버에 보관된다는 점이 특징이다.

쿠키는 클라이언트에 보관되기 때문에 변조될 수 있어 보안에 취약하고

세션은 서버에 보관되기 때문에 비교적 쿠키보다는 보안이 안전하나 유저가 몰릴때 서버에 부하가 간다.

 

2. TCP 와 UDP : 

 

TCP 와 UDP 의 가장 큰 차이는 신뢰성이다. TCP 는 신뢰성을 보장하고, UDP 는 신뢰성을 보장하지 못한다.

TCP 는 파일전송, 이메일, 웹 브라우저에 사용되고

UDP 는 스트리밍 같은 곳에 사용한다.

 

3. HTTP 와 HTTPS 의 차이점 : 

 

http 는 80 번 포트를 사용하고 https 는 443 번 포트를 사용한다.

https 는 http 에 데이터 암호화가 추가된 프로토콜이며 SSL 인증서를 사용하는 http 이다.

네트워크 상에서 중간에 제 3자가 정보를 볼 수 없도록 암호화를 지원한다.

 

4. AWS 볼륨 증설하기 : 

 

EC2 인스턴스 프리티어가 볼륨이 부족해 증설했다.

swap 을 이용해서 증설할 수 있었고 이는 성공적이었다.

 

5. IoC, DI : 

 

DI 는 객체나 클래스가 자신이 필요하는 의존성을 외부에서 주입받아 사용하는 디자인 패턴이다.

이는 코드의 결합도를 낮추고, 재사용성과 테스트 용이성을 향상시킬 수 있다.

IoC 는 제어의 역전이라는 개념으로 객체가 필요한 의존성을 직접 생성하는 대신 외부에서 받아서 사용하게 된다.

Nest.js 는 내장된 IoC 컨테이너를 가지고 있고 그래서 의존성 주입을 편리하게 해준다.

 

6. Docker : 

 

도커는 컨테이너를 기반으로 서비스를 패키징하고 배포하는데 유용한 오픈소스 프로그램이다.

도커는 코드를 더 빨리 전달하고 앱을 표준화하고, 코드를 원할하게 이동시켜 리소스 사용률을 높여 비용을 절감할 수 있다.

도커를 통해 AWS EC2 ubuntu 에 Nest.js 앱을 배포하며 학습하였다.

 


다음 주 목표

 

1. 부하테스트 용어 정리

2. 프로젝트 학습

3. OSI 7 계층

4. 토큰

5. OAuth


이번 주 목표 체크

 

 

1. Docker 사용하고 정리하기 ✅

2. 프로젝트 학습 ❌

 

 

'TIL&WIL > WIL' 카테고리의 다른 글

11 주차 [ WIL ]  (0) 2023.08.31
10 주차 [ WIL ]  (0) 2023.08.21
8 주차 [ WIL ]  (0) 2023.08.06
7 주차 ( + 협업을 통해 느낀점 ) [ WIL ]  (0) 2023.07.30
6 주차 ( + 협업을 통해 느낀점 )[ WIL ]  (0) 2023.07.23