- 코딩에 사용되는 언어 : 고수준 언어, 한번 코드를 짜면 컴파일러/인터프리 /JVM이 해당 기계어로 자동 번역함
- 어셈블리어 : 각 기계/CUP마다 다른 언어로 존재함, 생산성이 낮으나 기계 효율을 극대화 코드를 짜기에 적합함
IDE | 개발 | 코드에디팅, 협업, 시뮬레이터, 배포, 라이브러리 마켓 등 올인원 제공 툴 |
코드에디터 | 퍼블 | 철자,문법 오류 탐색, 쉬운 코딩 도움 툴 |
- 배포 : 코딩으로 빌드한 과정을 고객에게 전달하는 과정
- 앱 = 업데이트 파일 app 스토어에 배포
- 웹 = 서버에 업로드 해 해당 도메인으로 접근하게 배포
- 서버 : 클라에 정보를 전달하는 역할, IDC나 클라우드를 통한 공급을 받음
- IDC = 인터넷 데이터 센터
- 클라우드 : 종량제로 운영, H/W도 관리해줌, 머신러닝 등 모든 서비스를 제공함
- AWS(EC2), 네이버 클라우드(Micro Server)
- ↔ 온프레미스(직접 전산실 서버를 구축하는 방식)
- 분류
IaaS (이아스) | H/W(인프라) 제공 EX) AWS : C2 | - 고객이 직접 * 가상서버를 구축 - 사용자가 필요로 하는 인프라 (H/W) 실시간 확장 및 축소 * 보안 체계 + 가상머신 + 저장소 + 네트워크 + 시스템 설정 + DB구성 + 배포 + 소프트웨어 |
PaaS | laaS + 가상 서버 제공 EX) AWS : 엘라스틱빈스톡 |
- 몇번의 클릭으로 DBMS, 컨테이너 생성 - 플랫폼을 서비스로 제공 = 가상 서버를 알아서 구축함 = 고객이 소프트웨어(BY 코딩)를 구성하면 됨 |
SaaS | PaaS + S/W제공 | - 모든 구성 요소가 들어간 만들어진 S/W를 제공 EX - DROPBOX, 유튜브, 구글닥스 |
- 인프라 =/= 플랫폼
- JAVA SCRIPT : HTML과 CSS 요소를 움직이게 하는 기초 언어, F/E를 알기 위한 필수 지식
- 웹사이트 : 브라우저에서 작동하는 S/W, 웹 표준에 따라 움직임(CF - EXPLORE)
- 웹종류 차이
적응형 | 주소가 PC와 M이 다름 (PC와 M의 구성 자체가 다름) |
반응형 | 창 너비에 반응하여 요소 유무 및 사이트 레이아웃 반응 |
서버 내 데이터의 개념
- 쿠키 : 고객의 발자취 전부, 브라우저에 저장하며 특정 서버에서 브러우저에 저장한 특정 데이터
- 기한이 짧은 임시키를 브라우저에 보내 쿠키로 저장함 = 데이터 증명ID
- 세션 : 사용자가 로그인 성공 시, 브라우저가 해당 데이터를 Session ID라는 이름의 쿠키로 저장 →다음에 사이트 접속시 해당 데이터를 불러옴 → 서버에 로그인 된 상태가 지속되는 것을 의미함 , 쿠키에 저장하기 곤란한 기밀 데이터 정보 저장, 바코드로 구분, 많으면 부하 발생 (서버에 저장 쿠키로 인증된 사용자의 주요 정보와 데이터를 저장)
⇒ 쿠키 + 서버 조합으로 로그인이 쉬움
- 캐시 : 메모리 부분 등 다양한 곳에 쓰임, 가져오는데 비용이 드는 데이터를 1회 가져와 임시 저장, 자주 사용하는 이미지 혹은 데이터를 불러오기 위한 임시저장소
- JWT (JSON WEB TOKEN)
- https://www.youtube.com/watch?v=y-W0TlC0pJk&t=1222s (20분부터 시작)
- 세션은 메모리 부하에 에러 발생 여지가 크지만, JWT는 부담 없이 해당 인가를 구현
- 서버는 TOKEN만 주고 데이터를 휘발함 ⇒ TOKEN은 인코딩/암호화 데이터를 넣어 header/payload/verify signature(서명)로 구성⇒비밀키와 일치 여부 판단, 단방향성, STATELESS = 시간에 따른 상태값 변화가 없음 (세션은 STATEFUL)
payload JSON형식, 토큰 유효기간/공개 가능 여부/서비스 레벨 등 정보(Claim) 보유 header type(JWT형식) + 알고리즘(서명값을 생성시 사용되는 알고리즘 정보를 암호화) verify signature 페이로드와 헤더 + 서버에 감춘 비밀값을 암호화 알고리즘에 넣고 코딩 시 나옴 - 단점 : 토큰을 버리거나 무효화 할 수가 없음 = 통제 불가 ⇒ JWT와 세션 MIX 활용 이유
- JWT 관련 핵심개념인증(Authentication) 로그인 특정 서비스에 일정 권한을 가졌음을 증명하는 것
인가(Authorization) 서비스 속 고객 활동 인증된 사용자가 서비스 기능을 사용할 때, 서비스 사용자 허가
- 서버는 TOKEN만 주고 데이터를 휘발함 ⇒ TOKEN은 인코딩/암호화 데이터를 넣어 header/payload/verify signature(서명)로 구성⇒비밀키와 일치 여부 판단, 단방향성, STATELESS = 시간에 따른 상태값 변화가 없음 (세션은 STATEFUL)
- 로그인 기전 : DB에 저장된 사용자 계정 해시값 도출 ⇒ 사용자 암호를 알고리즘으로 계산 ⇒
- 계산값과 일치 여부 확인
- CDN 개념
- Control content Delivery Network, 여러 컨텐츠를 서버에서 사용자에게 분산하여 보내는 것
- 캐싱 두종류
동적캐싱 사용자가 요청을 보낼 때, - 있으면 cahe hit(바로 보냄)
- 없으면 cahe missing(서버에 요청해 받아냄) |
728x90
'관련 도서 및 지식 > 강의 및 인사이트' 카테고리의 다른 글
[ 아키텍쳐 ] 컴퓨터 아키텍쳐 : 컴퓨터 구조 이해하기 ~ CHAPTER 3 (0) | 2023.01.13 |
---|---|
[ 얄팍한 코딩사전 - 혼공얄코 ] 14~22강 : 서버와 컴퓨터의 구조 (0) | 2022.12.17 |
JIRA 대시보드 야무지게 활용하기 (JQL 활용법) (2) | 2022.12.16 |
그래서 SQL을 왜 써야하는데요? (0) | 2022.12.16 |
얕고 슬기롭게 아틀라시안(JIRA + Confluence) 활용하기 (0) | 2022.12.16 |