TIL120 ✨

YaR LabΒ·2023λ…„ 10μ›” 10일
0

TIL✨

λͺ©λ‘ 보기
99/135
post-thumbnail

πŸ—“οΈ23.10.06

πŸ—‚οΈ BackEnd

0️⃣ 인터넷

인터넷은 μ–΄λ–»κ²Œ λ™μž‘ν•˜λ‚˜?

  • κ±°λŒ€ν•œ λ„€νŠΈ + μ›Œν¬
  • λΌμš°ν„°: 컴퓨터 와 1λŒ€1 κ²°ν•©
  • λΌμš°ν„° 끼리 μ—°κ²° κ°€λŠ₯
  • λͺ¨λŽ€
  • ISP

DNS

  • Domain Name System(IP주둜λ₯Ό μ‰½κ²Œ 문자둜 바꿔놓은 것)
  • IP μ£Όμ†Œ -> 도메인 μ£Όμ†Œ

μ›Ή μ†ŒμΌ“

  • http μœ„μ—μ„œ κ΅¬μΆ•ν•œ ν”„λ‘œν† μ½œ
  • http(ν΄λΌμ΄μ–ΈνŠΈκ°€ μ„œλ²„μ— μš”μ²­μ„ ν•΄μ•Όλ§Œ 응닡할 수 있음)
  1. HTTP둜 ν•Έλ“œμ‰μ΄ν¬
  2. μ›Ήμ†ŒμΌ“μœΌλ‘œ μ–‘λ°©ν–₯ 톡신
  3. 접속 끊기

1️⃣ Git

work space
stage area
local repo
πŸ”½πŸ”½πŸ”½πŸ”½πŸ”½
remote repo

2️⃣ 데이터 ν‘œν˜„λ²•

JSON

https://www.json.org/json-ko.html

YAML

https://learnxinyminutes.com/docs/yaml/

3️⃣ λ¦¬λˆ…μŠ€ λͺ…λ Ήμ–΄

  • pwd: μž‘μ—… 디렉토리
  • ls
  • cd
  • mkdir
  • cp
  • cat
  • touch: 빈 파일
  • echo: 파일 λ‚΄μš© ν‘œμ‹œ
  • alias ll="ls -al"
  • .profile 에 alias섀정이 λ“€μ–΄κ°€ 있음

4️⃣ μ›Ήμ„œλ²„

  • λ¦¬λ²„μŠ€ ν”„λ‘μ‹œλΌκ³ λ„ 함
  • 엔진 μ—‘μŠ€, IIS, Apache

5️⃣ 인증과 인가

Authentication 인증

  • 둜그인
  • λˆ„κ΅¬μΈμ§€ 확인

Authorization 인가

  • 무엇을 ν•  수 μžˆλŠ”μ§€ κΆŒν•œ λΆ€μ—¬

6️⃣ ν”„λ ˆμž„μ›Œν¬

spring

  • κΈ°μ—…μš© μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜

7️⃣ λ°μ΄ν„°λ² μ΄μŠ€

RDB - MySQL, oracle

NoSQL - MongoDB, redis

ORM

  • Object Reration Mapping
  • μ˜€λΈŒμ νŠΈμ™€ ν…Œμ΄λΈ”μ˜ 관계λ₯Ό 클래슀둜 κ°€μ Έμ˜¬ 수 μžˆλ„λ‘ ν•΄μ£ΌλŠ” ν”„λ‘œκ·Έλž¨
  • μΏΌλ¦¬μž‘μ„± 없이 DB μ‘°μž‘ κ°€λŠ₯

ACID

  • μ›μžμ„± : λͺ¨λ‘ 성곡 λͺ¨λ‘ μ‹€νŒ¨
  • 일관성 : νŠΈλžœμ μ…˜μ—μ„œ μ‚¬μš©λœ 변경사항이 λ°μ΄ν„°λ² μ΄μŠ€μ˜ 무결성 쑰건을 λ§Œμ‘±ν•  수 μžˆλ„λ‘ ν•˜λŠ” 것
  • 격리성 : λ‘κ°œμ˜ νŠΈλžœμ μ…˜μ΄ μ„œλ‘œμ—κ²Œ 영ν–₯을 끼칠 수 μ—†μŒ
  • μ˜μ†μ„± : νŠΈλžœμ μ…˜μ΄ μ„±κ³΅μ μœΌλ‘œ λλ‚˜λ©΄ λ°μ΄ν„°λ² μ΄μŠ€μ— 계속 μœ μ§€ 됨

νŠΈλž™μ μ…˜

  • μž‘μ—…μ˜ λ‹¨μœ„

N + 1

  • 데이터 갯수 만큼 쿼리가 λ°œμƒν•˜λŠ” 문제

8️⃣ API

REST

  • Representational State Transfer
  • ν‘œν˜„μ  μƒνƒœ μ „λ‹¬μž
  • μžμ›μ˜ ν‘œν˜„μ— μ˜ν•œ μƒνƒœ 전달
  • POST, GET, PUT, DELETE (μƒνƒœ)
  • μƒνƒœ, μžμ›
  • μ„œλ²„κ°€ 쿼리λ₯Ό 디비에 λ‚ λ €μ„œ 데이터λ₯Ό κ°€μ Έμ˜¨λ‹€

GraphQL

  • 쿼리언어 μŠ€νŽ™
  • ν΄λΌμ΄μ–ΈνŠΈκ°€ μ„œλ²„μ— 쿼리λ₯Ό λ‚ λ¦¬λŠ” κ°œλ…
  • endpointκ°€ ν•˜λ‚˜λ§Œ μžˆλ‹€

9️⃣ 배치처리

  • 일정 κΈ°κ°„λ™μ•ˆ 데이터λ₯Ό λͺ¨μ•„λ‘μ—ˆλ‹€κ°€ λŒ€λŸ‰μ˜ λ°μ΄ν„°μž‘μ—…μ„ ν•œλ²ˆμ— ν•˜λŠ” 것을 말함
  • μΌμ •μ‹œκ°„λ§ˆλ‹€ 주기적으둜 ν•΄μ•Όν•˜λŠ” μž‘μ—…
  • μŠ€μΌ€μ€„λ§ 기법

crontab

* * * * * echo "hello" > /dev/pts/0

λΆ„ (0 - 59) μ‹œ (0 - 23) 일 (1 - 31) μ›” (1 - 12) μš”μΌ (0 - 6)

Jenkins

μŠ€ν”„λ§ 배치

AWS lambda

  • ν΄λΌμš°λ“œ ν™˜κ²½ 배치처리

πŸ”Ÿ λ°°ν¬ν•˜κΈ°

CI

  • μ§€μ†μ μœΌλ‘œ 톡합 배포

CD

  • μ§€μ†μ μœΌλ‘œ 톡합 배포

πŸ”’ 더 μ•Œμ•„λ³΄κΈ°

도컀

OAuth

ν΄λΌμš°λ“œ

λ³΄μ•ˆ

https://owasp.org/www-project-top-ten/

0개의 λŒ“κΈ€