티스토리 뷰
오늘의 리서치
- 서버의 구동 방식에 대한 것들을 리서치 하다보니 이러한 발전 과정이 리소스를 얼마나 효율적으로 사용하는 사람들에게 최적화해서 보여줄 수 있냐에 따라서 발전한 것으로 생각이 들었다.
- 서버도 컴퓨팅의 관점에서 바라보면 한정된 컴퓨팅 리소스를 어떻게 효율적으로 사용하여 얼마나 사용자에게 효과적으로 전달할 수 있는지에 대한 발전이라는 생각이 들었다.
정확히 칼처럼 구분되는 개념은 아니다. 개념은 혼용될 수 있다.
장고는 프레임워크이기도 하지만 패키지이다.
장고에서 추가적인 라이브러리 기능이 있기도 하다. 그러한 기능은 패키지이다.
패키지는 모듈을 포함하고 있기도 하나 모듈중에는 패키지가 아닌 것도 있다.
라이브러리와 프레임워크를 구분하는 것도 소모적인 논쟁이다.
모듈, 패키지, 라이브러리, 프레임워크 를 사용하는 이유는 시간이라는 자원은 유한하므로 코드를 재활용하여 프로그래밍을 효율적으로 하기 위해서이다.
한정적인 컴퓨팅 리소스를 최대로 활용하기 위해 자료구조, 알고리즘이 발전했다
컴퓨터의 역사와 마찬가지로 컴퓨터 과학에서의 방법론들은 한정적 자원을 효율적으로 쓰이기 위해서 고안되고 있다.
Static Web Sites
정적인 웹 페이지로 구성되어 있는 웹사이트로 대체로 HTTP 방식으로
서버의 구동은 WS에서 Request에 해당하는 리소스들을 저장된 리소스(Static Data)를 서빙(Response)한다.
Dynamic Web Sites
동적인 웹 페이지로 구성되어 있는 웹사이트로 대체로 HTTP 방식으로
서버의 구동은 WS에서 Request에 해당하는 리소스들을 저장된 리소스를 가공하여 서빙(Response)한다. 이때 처리 방식에 따라 WAS로 웹어플리케이션이 구동이 필요하기도 한다.
SPA (Sing Page Application)
문자 그대로 하나의 페이지에서 작동되는 어플리케이션, 하나의 페이지에서 필요한 부분의 데이터만 서버로부터 받아와서 부분적으로 업데이트
CSR (Client Side Rendering)
클라이언트 사이드에서 어플리케이션을 작동하는 로직들도 구동하는 방식
React, Vue, Angular와 같은 프론트엔드 웹 프레임워크의 발전으로 각광 받음
사용자가 첫 페이지를 보기까지 오래걸릴 수 있는 단점과 SEO 최적화에 약간의 문제점을 가지고 있는 단점이 있다.
SSR (Server Side Rendering)
서버 사이드에서 어플리케이션을 작동 후 결과를 서빙함
사용자에게 화면을 먼저 서빙하지만 인터랙션할 수 있는 데에 걸리는 시간이 길다.
- TTV(Time To View), TTI(Time To Interact) 사이의 시간차를 줄이는 것이 웹 사이트에서 사용자 경험을 좋게 할 수 있다
SSG (Static Site Generation)
이러한 CSR과 SSR의 단점을 보완하고자 등장해서 스태틱 사이트를 미리 만들어놓는다.
Gatsby, NEXT.js 와 같은 라이브러리를 활용
단방향 암호화 방식
복호화 되지 않는 암호화 방식 : md5, sha
양방향 암호화 방식
- 대칭키 방식 : 암호화 복호화 될때 같은 키를 사용 : AES, Twofish
- 비대칭키 방식 : 2개의 키를 사용하여 하나는 암호화할때 사용, 다른 하나는 복호화할때 사용 : RSA
참조 영상 :
노마드 코더 Nomad Coders - 블록체인. 개발자가 쉽게 설명해드림. 10분컷.
노마드 코더 Nomad Coders - 비밀번호 털렸다고? 암호화. 해시함수. 5분 설명.
개발자로 취직하기 - 해시 Hash 알고리즘 설명 5분만에 이해하기
불새! 쫄불! - 블록체인 전문방송 - [쫄불] 쫄지마 블록체인 #27회: 암호화와 해시의 차이가 뭔가요?
강철의 블록시티 - 강철의 블록체인 강의 [Lecture 2] : 기본기술 해시(Hash), 해시함수(Hash Function)
엔지니어대한민국 - [자료구조 알고리즘] 해쉬테이블(Hash Table)에 대해 알아보고 구현하기
드림코딩 - 서버사이드 렌더링 (개발자라면 상식으로 알고 있어야 하는 개념 정리 ⭐️)
얄팍한 코딩사전 - HTTPS가 뭐고 왜 쓰나요? (Feat. 대칭키 vs. 비대칭키)
참조 글:
LINE Engineering - LINE에서 하루 만에 정적 웹 페이지 개발해서 배포하는 방법
1. AWS 강의 수강
2. 자료구조 자료 검색
'What I Learned' 카테고리의 다른 글
TIL_20221103_웹프레임워크와 자료구조 (0) | 2022.11.04 |
---|---|
TIL_20221102_serializer 데이터 검증 (0) | 2022.11.03 |
TIL_20221031_WS, WAS, Proxy, CDN, SSH (0) | 2022.10.31 |
TIL_20221028_장고 Serializers 검증 (0) | 2022.10.30 |
WIL_221024to221028_내일배움캠프9주차 (0) | 2022.10.30 |
- Total
- Today
- Yesterday
- API
- 파이썬나누기
- 항해플러스ai
- 파이썬
- 스파르타내일배움캠프
- HTML
- 항해플러스후기
- css선택자
- Til
- 스파르타코딩클럽
- 자료구조
- GIT
- dtl
- HTTP
- github
- 클래스
- 컴퓨터구조
- css
- 코드컨벤션
- 예외처리
- 함수
- 반복문
- wil
- 장고
- 항해솔직후기
- 파이썬 함수 return
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |