choijeongon / Chick

๐Ÿฅ ์†Œ์•„ ์–ด๋ฆฐ์ด ํ™”์ƒ์ฑ„ํŒ… ํ”Œ๋žซํผ - ๐Ÿ† ๊ณตํ†ตํ”„๋กœ์ ํŠธ UCC ํŠน๋ณ„์ƒ

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

๋ณ‘์•„๋ฆฌ(๋ณ‘์› ์•„์ด๋“ค์„ ์œ„ํ•œ ๋†€์ดํ„ฐ)

WebRTC๋ฅผ ํ™œ์šฉํ•œ ๋น„๋Œ€๋ฉด ๋†€์ดํ„ฐ

๐Ÿš€ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

๐Ÿ“…์ง„ํ–‰ ์ผ์ •

23.01.02(์›”) ~ 23.02.17(๊ธˆ) (์ด 7์ฃผ)

  • ๊ธฐํš ๋ฐ ์„ค๊ณ„ : 01.02 ~ 01.20 (3์ฃผ)
    • ๊ธฐํš : ํ”„๋กœ์ ํŠธ ์•„์ด๋””์–ด ๋…ผ์˜, ์ฃผ์ œ ๊ตฌ์ฒดํ™”, ๊ธฐ์ˆ  ์Šคํƒ ์„ ์ •
    • ์„ค๊ณ„ : ๊ธฐ๋Šฅ ์š”๊ตฌ ๋ช…์„ธ์„œ ์ž‘์„ฑ, ERD, ์™€์ด์–ดํ”„๋ ˆ์ž„, ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ์„ค๊ณ„, REST API ์„ค๊ณ„
  • ๊ฐœ๋ฐœ : 01.23 ~ 02.10 (3์ฃผ)
    • API ๊ตฌํ˜„
    • ํ”„๋กœ์ ํŠธ ์ฃผ์š” ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ๋ฐฐํฌ ๋ฐ ์ธํ”„๋ผ ๊ตฌ์ถ•
  • ํ…Œ์ŠคํŠธ ๋ฐ ์œ ์ง€๋ณด์ˆ˜ : 02.13 ~ 02.17 (1์ฃผ)
    • ๋ฐ๋ชจ ์„œ๋น„์Šค ์‹œ์ž‘
    • ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ
    • ์˜ค๋ฅ˜ ์ˆ˜์ •
    • ์‚ฐ์ถœ๋ฌผ ์ •๋ฆฌ

๐ŸคํŒ€ ์†Œ๊ฐœ

๐ŸŒˆํ”„๋ก ํŠธ์—”๋“œ

์ด๋ฆ„ ๊ฐœ๋ฐœ ๋‚ด์šฉ
๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป ์ตœ์ •์˜จ ๐Ÿ“ง ํŒ€์žฅ, ํ”„๋ก ํŠธ ๋ฆฌ๋”
React, Socket.io(client), WebRTC
์›น์‚ฌ์ดํŠธ ์ „์ฒด ๋””์ž์ธ ๋ฐ UI/UX ๊ธฐํš
์›น์†Œ์ผ“ ๊ฒŒ์ž„ ๊ธฐ๋Šฅ
UCC
๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป ์—„ํฌ์› ๐Ÿ“ง React, WebRTC
๊ฒŒ์ž„๋ฐฉ ํŽ˜์ด์ง€ ๊ตฌํ˜„
๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป ๊น€๋ฏผ์ค€ ๐Ÿ“ง React
๋งˆ์ด ํŽ˜์ด์ง€, ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ๋ฐ ํšŒ์› ๊ด€๋ฆฌ ํŽ˜์ด์ง€ ๊ตฌํ˜„

๐Ÿ›ฐ๋ฒก์—”๋“œ

์ด๋ฆ„ ๊ฐœ๋ฐœ ๋‚ด์šฉ
๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป ํ•œ์žฌ์šฑ ๐Ÿ“ง Spring Boot REST API
Socket.io(server)
์›น์†Œ์ผ“ ๊ฒŒ์ž„ ๊ธฐ๋Šฅ
์  ํ‚จ์Šค์™€ ๋„์ปค๋ฅผ ํ™œ์šฉํ•œ CI/CD
๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป ๊น€์ฃผ์„ฑ ๐Ÿ“ง Spring Boot REST API
์ž๋™ ๋งค์นญ ์•Œ๊ณ ๋ฆฌ์ฆ˜
์  ํ‚จ์Šค์™€ ๋„์ปค๋ฅผ ํ™œ์šฉํ•œ CI/CD

๐Ÿ๋ชฉํ‘œ

์ฃผ์ œ, ๊ธฐํš์˜๋„์— ์ถฉ์‹คํ•œ, ์™„์„ฑ๋„ ์žˆ๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜์—ฌ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ๊นŒ์ง€ ๋‹ฌ์„ฑํ•˜๊ธฐ!!

๐Ÿค”๊ธฐํš ์˜๋„

๋ณ‘์›์— ์žฅ๊ธฐ ์ž…์›ํ•˜๋Š” ์•„์ด๋“ค์ด ์›ƒ๊ฒŒ ํ• ์ˆ˜ ์žˆ๋Š” ๋น„๋Œ€๋ฉด ๋†€์ดํ„ฐ ์˜์ƒ ํ”Œ๋žซํผ

๐ŸŽฏ์„œ๋น„์Šค ๋Œ€์ƒ

๋งŒ 6 - 10์„ธ ์•„์ด๋“ค

๐ŸŽจUI/UX

์•„์ด๋“ค์ด ์‰ฝ๊ฒŒ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์–ด๋ฆฐ์ด๋“ค์ด ์ข‹์•„ํ•˜๋Š” ์ƒ‰์ƒ์œผ๋กœ ๋””์ž์ธ ํ•˜์˜€์Œ.

โš™Technical

๐Ÿ“กํ”„๋ก ํŠธ์—”๋“œ

OpenVidu, AR๋กœ ์–ผ๊ตด ๋ฐ”๊พธ๊ธฐ

๐Ÿ“ก๋ฒก์—”๋“œ

์ž๋™ ๋งค์นญ ์•Œ๊ณ ๋ฆฌ์ฆ˜, ๊ทธ๋ฆผํŒ ์†Œ์ผ“ ํ†ต์‹ 

๐Ÿ› ๊ธฐ์ˆ  ์Šคํƒ

Architecture

  • ์„ธ๋ถ€๋‚ด์—ญ
    ๊ตฌ๋ถ„ ๊ธฐ์ˆ ์Šคํƒ ์ƒ์„ธ๋‚ด์šฉ ๋ฒ„์ „
    ๊ณตํ†ต ํ˜•์ƒ๊ด€๋ฆฌ GitLab -
      ์ด์Šˆ๊ด€๋ฆฌ Jira -
      ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ Mattermost, Notion -
    FrontEnd HTML5
      CSS3
      JavaScript(ES6)
      styled-components Tailwind 2.2.0
      React React 18.2.0
        Redux 8.0.5
        Redux-Toolkit 1.9.2
      IDE Visual Studio Code 1.75.1
    BackEnd Java OpenJDK 11.0.16
      Build Gradle 7.5.1
      Spring Boot 2.5.9
        Security 2.1.7
      API Docs Swagger2 2.9.2
      DB Mysql 8.0.32
        Spring-Data-jpa 2.1.10
      WebRTC OpenVidu 2.25.0
      Socket Nodejs 14.21.2
      IDE IntelliJ 22.3.1
    Server AWS EC2 Ubuntu 20.04
      ๋ฐฐํฌ Docker 23.0.0
        Jenkins 2.375.2
      WebServer Nginx 1.23.3
    ์„ฑ๋Šฅํ…Œ์ŠคํŠธ   Grafana  
        Prometheus  

๐Ÿ“ฌ๋ฐฐํฌ ๋ฐฉ๋ฒ•

๐Ÿ’ผ๊ธฐํš/์„ค๊ณ„

๐Ÿ“‘๊ธฐ๋Šฅ ์š”๊ตฌ ๋ช…์„ธ์„œ

๐Ÿ“‘ERD

ERD

๐Ÿงฉ์™€์ด์–ดํ”„๋ ˆ์ž„

ํ”ผ๊ทธ๋งˆ

ํ”ผ๊ทธ๋งˆ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ž‘์„ฑํ•จ

์ฒ˜์Œ ์™€์ด์–ดํ”„๋ ˆ์ž„ ๊ธฐํš๋‹จ๊ณ„์—์„œ๋Š” ์›น ํ™”๋ฉด์œผ๋กœ ๊ตฌ์ƒํ•˜์˜€์œผ๋‚˜, ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๊ณ  ํ…Œ๋ธ”๋ฆฟ ํ™”๋ฉด์œผ๋กœ ์ „ํ™˜ํ•จ


๐Ÿ›ฐํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ/์šด์˜

๐Ÿ›ฐํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ

๐Ÿ–ผํ”„๋ก ํŠธ์—”๋“œ ๐Ÿ“ก๋ฐฑ์—”๋“œ
ํ”„๋ก ํŠธ๋””๋ ‰ํ† ๋ฆฌ๊ตฌ์กฐ ๋ฒก์—”๋“œ๋””๋ ‰ํ† ๋ฆฌ๊ตฌ์กฐ

๐Ÿ“ขJira

์ง€๋ผ


๐ŸงพNotion

๋…ธ์…˜


๐Ÿ“ฑ์„œ๋น„์Šค ๊ตฌํ˜„ ๋‚ด์šฉ

๐Ÿ•น์ฃผ์š” ๊ธฐ๋Šฅ

๋ณ€์‹ ๋†€์ด

๋ณ€์‹ ๋†€์ด

๊ทธ๋ฆผ๋†€์ด

๊ทธ๋ฆผ๋†€์ด

์œจ๋™๋†€์ด

์œจ๋™๋†€์ด

๋งŒํ™”๋ณด๊ธฐ

๋งŒํ™”

๋งˆ์ดํŽ˜์ด์ง€

๋งˆ์ดํŽ˜์ด์ง€

๐Ÿงช๋ฐ๋ชจ ์„œ๋น„์Šค ์‹คํ–‰

์„œ๋ฒ„์˜ ์•ˆ์ •์„ฑ๊ณผ ๋ฒ„๊ทธ๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ๋ฅผ ํ•˜๊ณ  Prometheus ์™€ Grafana๋ฅผ ํ†ตํ•ด ๋กœ๊ทธ๋ฅผ ์ถ”์ ํ•จ

image

  • ๋ฐฐํฌ ์‹œ์ž‘ 3์‹œ๊ฐ„ ๊ฒฝ๊ณผ 637๋ฒˆ์˜ ๋งค์นญ ์š”์ฒญ์ด ์žˆ์—ˆ์œผ๋ฉฐ 403์—๋Ÿฌ๊ฐ€ ๋งŽ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธ
  • ๊ฐ™์€ ์„ธ์…˜์— 4๋ช…์„ ๋„˜๋Š” ์‚ฌ๋žŒ์ด ๋™์‹œ ์ ‘์†์ด ๋˜์–ด ์ฝ”๋“œ ์ˆ˜์ • ํ›„ ์žฌ๋ฐฐํฌ ํ•˜์˜€์Œ
  • ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•จ์œผ๋กœ์„œ 403์—๋Ÿฌ๊ฐ€ ์ค„์–ด๋“œ๋Š” ๊ฒƒ์„ ํ™•์ธ

๐Ÿ˜ํ”„๋กœ์ ํŠธ ํšŒ๊ณ 

์ตœ์ •์˜จ

์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ์˜ ๋ชฉํ‘œ๋Š” ์—ด์‹ฌํžˆ ํŒ€์›๋“ค๊ณผ ์ฆ๊ฒ๊ฒŒ ํ”„๋กœ์ ํŠธ๋ฅผ ์ž˜ ๋งˆ๋ฌด๋ฆฌํ•˜๋Š” ๊ฒƒ์ด์—ˆ๋Š”๋ฐ ๋ชฉํ‘œํ•œ๋Œ€๋กœ ์ด๋ฃจ์–ด์ง„๊ฒƒ ๊ฐ™์•„ ๋งŒ์กฑ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํ›„ํšŒ๊ฐ€ ๋‚จ์ง€ ์•Š์„ ์ •๋„๋กœ ์ตœ์„ ์„ ๋‹ค ํ•ด์„œ ๋ฟŒ๋“ฏํ•ฉ๋‹ˆ๋‹ค. ์•„์‰ฌ์—ˆ๋˜์ ์€ ๋ณ‘์› ์„ญ์™ธ๊ฐ€ ๋น ๋ฅด๊ฒŒ ์ด๋ฃจ์–ด์ง€์ง€ ์•Š์•„์„œ ์•„์‰ฌ์› ๊ณ  ์• ์ž์ผ ๋ฐฉ๋ฒ•๋ก ์„ ๋„์ž…ํ•˜์˜€์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ์ƒํ™ฉ์ด ๋”๋””์–ด์„œ ์ œ๋Œ€๋กœ๋œ ์• ์ž์ผ์„ ํ•˜์ง€ ๋ชปํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํ…Œ์ŠคํŒ…๊ณผ ๋ฆฌํŒฉํ† ๋ง๋„ ๊ผผ๊ผผํ•˜๊ฒŒ ํ•˜์ง€ ๋ชปํ•œ ๊ฒƒ ๊ฐ™์•„์„œ ๋‹ค์Œ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ๊ฐœ์ธ ์‹ค๋ ฅ์„ ๋Š˜๋ฆฌ๋Š”๋ฐ๋„ ์ง‘์ค‘ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.


์—„ํฌ์›

๋„ˆ๋ฌด ์ž˜ ํ•˜๋Š” ํŒ€์›๋“ค์„ ๋งŒ๋‚˜์„œ ์ •๋ง ์žฌ๋ฏธ์žˆ๊ฒŒ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์—” 5๋ช… ํŒ€์ด๋ผ ํ”„๋กœ์ ํŠธ๋ฅผ ์™„์„ฑํ•  ์ˆ˜ ์žˆ์„๊นŒ ํ•˜๋Š” ์ƒ๊ฐ์„ ํ–ˆ์ง€๋งŒ ๋ชจ๋‘๋“ค ์—ด์‹ฌํžˆ ์ฐธ์—ฌํ•˜๊ณ  ์„œ๋กœ ๋…๋ คํ•˜์—ฌ ์ž˜ ๋งˆ๋ฌด๋ฆฌํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํŒ€์›์— ๋น„ํ•ด ์ œ๊ฐ€ ์‹ค๋ ฅ์ด ๋ถ€์กฑํ•˜๋‹ค๊ณ  ๋Š๊ผˆ๋Š”๋ฐ ์กฐ๊ธˆ ๋Š๋ ค๋„ ํŒ€์›๋“ค์ด ์žฌ์ด‰ํ•˜์ง€ ์•Š๊ณ  ๋๊นŒ์ง€ ํ•ด๋‚ผ ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์คฌ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๋ถ€๋ถ„์ด ์ •๋ง ์ข‹์•˜์ง€๋งŒ ์ œ๊ฐ€ ์ข€ ๋” ์‹ค๋ ฅ์„ ๋Š˜๋ ค์„œ ๋‹ค์Œ์— ์ด ํŒ€๊ณผ ํ•จ๊ป˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค๋ฉด ๋งŽ์€ ๋„์›€์ด ๋˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.


๊น€๋ฏผ์ค€

์ฒ˜์Œ์— ๋“  ์ƒ๊ฐ์€ ์•„์ด๋””์–ด๋Š” ์ข‹๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์‹ค์ œ๋กœ ์ž˜ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์„์ง€ ๊ฑฑ์ •์ด ๋งŽ์•˜์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํŒ€์›๋“ค์ด ๋„ˆ๋ฌด ์ž˜ ํ•ด์ฃผ์—ˆ๊ณ , ๋ถ€์กฑํ•œ ์ œ๊ฐ€ ํ—ค๋ฉ”๊ณ  ์žˆ์„ ๋•Œ ์ธ๋‚ด์‹ฌ์žˆ๊ฒŒ ๊ธฐ๋‹ค๋ ค์ฃผ์–ด์„œ ์žฌ๋ฐŒ๊ณ  ํ–‰๋ณตํ•˜๊ฒŒ ํ”„๋กœ์ ํŠธ ํ–ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ œ๊ฐ€ ๋กœ๊ทธ์ธ ํšŒ์›๊ฐ€์ž… ๊ทธ ์™ธ ๋‹ค๋ฅธ ๊ธฐํƒ€ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ, jwt๋ฐฉ์‹์— ๋Œ€ํ•ด ์ œ๋Œ€๋กœ ๊ณต๋ถ€ํ•œ ๊ฒƒ์ด ์ฒ˜์Œ์ด์—ˆ์ง€๋งŒ ๋๊นŒ์ง€ ํฌ๊ธฐํ•˜์ง€ ์•Š๊ณ  ๊ณต๋ถ€ํ•˜๊ณ  ํŒ€์›๋“ค์—๊ฒŒ ์„ค๋ช…๋„ ํ•ด์ฃผ๋ฉฐ ์ดํ•ด๋„๊ฐ€ ์˜ฌ๋ผ๊ฐ”๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ ๊ฐœ๋ฐœ์ž๋Š” ํ˜ผ์ž ์—ด์‹ฌํžˆ ๊ณต๋ถ€ํ•˜๋Š” ๊ฒƒ๋„ ์ค‘์š”ํ•˜์ง€๋งŒ, ๊ณต๋ถ€ํ•˜๋Š” ํ–‰์œ„๋„ ํŒ€์›๋“ค์„ ์ž˜ ๋งŒ๋‚˜๋ฉด ๋Šฅ๋ฅ ์ด ๋”์šฑ ์ข‹์•„์ง„ ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. ๋ฟ ์•„๋‹ˆ๋ผ, ํ›„์— ํšŒ์‚ฌ์—์„œ ๋ฐฑ์—”๋“œ ๋ถ„์•ผ๋ฅผ ์ผํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๋งก๊ฒŒ ๋˜์–ด ์•„์‰ฝ๋‹ค๋Š” ์ƒ๊ฐ์„ ์ฒ˜์Œ์— ํ•˜์˜€์ง€๋งŒ, ํ”„๋ก ํŠธ์—์„œ ๋กœ๊ทธ์ธ๊ณผ ํšŒ์›๊ฐ€์ž…์„ ํ•˜๋ฉด์„œ ๋ฐฑ์—”๋“œ๊ฐ€ ํ•ด์ฃผ๋Š” ์ฒ˜๋ฆฌ์— ๋Œ€ํ•ด์„œ ์ƒ๊ฐ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ์˜€์Šต๋‹ˆ๋‹ค. ํŠนํžˆ jwt๋ฐฉ์‹์— ๋Œ€ํ•ด์„œ ๋ฐฑ์„ ์ง์ ‘ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ๋‹ค๋Š” ์ƒ๊ฐ์„ ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ๊ฐ€์žฅ ๋งค๋ ฅ์ ์ธ ๋ถ€๋ถ„์ด accessToken์„ ์„œ๋ฒ„์— ๋ณด๋‚ด ๋งŒ๋ฃŒ๋๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ๋งŒ๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด ๋งŒ๋ฃŒ๋˜์—ˆ๋‹ค๊ณ  ์‹ ํ˜ธ๋ฅผ ๊ทธ๋ฆฌ๊ณ  ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” ํ•ด๋‹น ์‹ ํ˜ธ๋ฅผ ๋ฐ›์•„ ๋‹ค์‹œ ์„œ๋ฒ„์— accessToken๊ณผ refreshToken์„ ๋ณด๋‚ด์ฃผ์–ด accessToken์„ ์žฌ๋ฐœ๊ธ‰ํ•˜๊ฒŒ ๋˜๋Š” ์ ˆ์ฐจ๊ฐ€ ๋„ˆ๋ฌด ๋งค๋ ฅ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ตœ์‹  ๋ณด์•ˆ์— ๋Œ€ํ•ด์„œ ์•Œ๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ, ๋ธŒ๋ผ์šฐ์ €์— ๋Œ€ํ•œ ๊ธฐ๋Šฅ์ค‘์—์„œ ๊ฐ™์€ ๋„๋ฉ”์ธ์ธ ์ฟ ํ‚ค๋งŒ ๊ฐ€์ ธ์˜ค๋Š” sameSite์ฟ ํ‚ค์„ค์ •์„ ๋ชฐ๋ผ์„œ ์ผ์ฃผ์ผ์„ ํ•ด๋ฉ”๊ฒŒ ๋˜์—ˆ์ง€๋งŒ ํ˜„์žฌ๋Š” ๊ผญ ํ•„์š”ํ•œ ์‹œ๊ฐ„์ด์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ํ”„๋กœ์ ํŠธ๋•Œ๋Š” ์ง€๊ธˆ๋ณด๋‹ค ํ›จ์”ฌ ๋‚˜์€ ๊ฐœ๋ฐœ์‹ค๋ ฅ๊ณผ ์†Œํ†ต์„ ์ž˜ํ•˜๋Š” ์‚ฌ๋žŒ์ด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.


ํ•œ์žฌ์šฑ

๊ธธ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋˜ 7์ฃผ๊ฐ€ ๋น ๋ฅด๊ฒŒ ์ง€๋‚˜๊ฐ”์Šต๋‹ˆ๋‹ค. ํ•ญ์ƒ ์—ด์‹ฌํžˆ ํ•˜๋Š” ํŒ€์›๋ถ„๋“ค ๋•๋ถ„์—, ๋” ์—ด์‹ฌํžˆ ๊ฐœ๋ฐœํ•˜๊ฒŒ ๋œ๊ฒƒ ๊ฐ™๋„ค์š”. ๋ฐฐํฌ์™€ nodejs๋ฅผ ์ด์šฉํ•œ ์†Œ์ผ“ํ†ต์‹ ์„ ๊ฒฝํ—˜ํ•ด ๋ณผ ์ˆ˜ ์žˆ์–ด ์ข‹์•˜์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ ํ•ด๋ณธ ๊ธฐ์ˆ  ์Šคํƒ์ด๋ผ ๋งŽ์€ ์–ด๋ ค์›€์ด ์žˆ์—ˆ์ง€๋งŒ, ํฌ๊ธฐํ•˜์ง€ ์•Š๊ณ  ๋„์ „ํ•ด์„œ ๋ฐ๋ชจ์„œ๋น„์Šค๋ฅผ ์ง„ํ–‰ ํ–ˆ์„ ๋•Œ ๋ฟŒ๋“ฏํ–ˆ์Šต๋‹ˆ๋‹ค. 7์ฃผ๊ฐ„ ํ”„๋กœ์ ํŠธ ํ•˜์‹œ๋Š๋ผ ๋‹ค๋“ค ๊ณ ์ƒํ•˜์…จ๊ณ , ๋‚จ์€ ํ”„๋กœ์ ํŠธ๋„ ํ™”์ดํŒ… ์ž…๋‹ˆ๋‹คโ˜บ


๊น€์ฃผ์„ฑ

์—ฌ๋Ÿฌ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ฐ™์ด ํ•˜๋Š” ํ˜‘์—… ํ”„๋กœ์ ํŠธ๋Š” ์ฒ˜์Œ์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ธด์žฅ๋„ ๋˜๊ณ  ๊ฑฑ์ •๋„ ๋งŽ์•˜๋Š”๋ฐ, ๋„ˆ๋ฌด ์ข‹์€ ํŒ€์›๋“ค์„ ๋งŒ๋‚˜์„œ 7์ฃผ๊ฐ€ ์งง๊ฒŒ ๋Š๊ปด์งˆ ๋งŒํผ ์ฆ๊ฒ๊ฒŒ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๊ธฐํš๋ถ€ํ„ฐ ๊ฐœ๋ฐœ๊นŒ์ง€ ํ•ด๋ณด๋ฉฐ ์ˆœํƒ„ํžˆ ํ˜๋Ÿฌ๊ฐ€๊ธฐ๋ณด๋‹ค๋Š” ์ค‘๊ฐ„์— ์—Ž์–ด์ง€๋Š” ์ผ๋„ ์ƒ๊ฒผ์ง€๋งŒ ๋“ ๋“ ํ•œ ํŒ€์›๋“ค๊ณผ ํ•จ๊ป˜ํ•˜๋ฉด์„œ ํฐ ๋ถˆ์•ˆํ•จ ์—†์ด ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฐ์šธ ์ ์ด ๋งŽ์•˜๊ณ  ํ–‰๋ณตํ–ˆ๋˜ 7์ฃผ์˜€์Šต๋‹ˆ๋‹ค.


About

๐Ÿฅ ์†Œ์•„ ์–ด๋ฆฐ์ด ํ™”์ƒ์ฑ„ํŒ… ํ”Œ๋žซํผ - ๐Ÿ† ๊ณตํ†ตํ”„๋กœ์ ํŠธ UCC ํŠน๋ณ„์ƒ


Languages

Language:JavaScript 94.6%Language:Java 4.9%Language:CSS 0.3%Language:HTML 0.2%Language:Dockerfile 0.0%