Skip to content

๐Ÿš€ [feature] ๋ ˆ๋””์Šค ์žฅ์• ์ƒํ™ฉ ์ถœ์„ ๋Œ€๋น„ย #104

Description

@binary-ho

๋ฌธ์ œ ์ƒํ™ฉ

ํ˜„์žฌ ๊ตฌํ˜„์œผ๋กœ๋Š”, ์ˆ˜๊ฐ•์ƒ ์ •๋ณด (Attendee) ์บ์‹ฑ์€ ์‹คํŒจํ•˜๋”๋ผ๋„ ์ถœ์„์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ,
์—ด๋ฆฐ ์ˆ˜์—…์— ๋Œ€ํ•œ ์ •๋ณด์ธ OpenLecture ๊ฐ์ฒด์˜ ์บ์‹ฑ์— ์‹คํŒจํ•œ๋‹ค๋ฉด ์ถœ์„์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์ƒํ™ฉ์ด๋‹ค. (์ˆ˜์—… OPEN์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค) ์ฆ‰, ๋ ˆ๋””์Šค์— ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค๋ฉด ์˜์›ํžˆ ์ถœ์„ํ•  ์ˆ˜ ์—†๊ฒŒ ๋œ๋‹ค.
๋˜ํ•œ ํšŒ์›๊ฐ€์ž… ๊ณผ์ •์—์„œ ์ด๋ฉ”์ผ ์ธ์ฆ์„ ํ•˜๋Š”๋ฐ ์ด ๋•Œ๋„ ๋ ˆ๋””์Šค ์‚ฌ์šฉ์ด ํ•„์ˆ˜๋‹ค! ๋ฌผ๋ก  ๋‚˜์ค‘์— OAuth๊ฐ€ ๋„์ž…๋˜๋ฉด์„œ ์ด๋ฉ”์ผ ์ธ์ฆ์€ ๋ถˆํ•„์š”ํ•ด์ง€๋‚˜, ๋ถ„๋ช… ๊ณ ๋ฏผํ•ด๋ดค์–ด์•ผ ํ•˜๋Š”๊ฒŒ ๋งž๋Š” ๋ฌธ์ œ๋‹ค.



๊ฐ์‚ฌํ•˜๊ฒŒ๋„ ์–ผ๋งˆ ์ „ ๋ฉด์ ‘ ์ž๋ฆฌ์—์„œ ์ด ๋ถ€๋ถ„์— ๋Œ€ํ•ด ์–ด๋–ค ๋Œ€์ฒ˜๋ฅผ ์ƒ๊ฐํ•ด ๋ณด์•˜๋Š”์ง€์— ๋Œ€ํ•œ ์งˆ๋ฌธ์„ ๋ฐ›์•˜๊ณ 
๋ฌธ์ œ๋ฅผ ์ธ์‹ํ•˜๊ฒŒ ๋๋‹ค.

ํ•ด๊ฒฐ์ฑ… ํ›„๋ณด๋“ค

์ผ๋‹จ ๊ธฐ๋ณธ์ ์œผ๋กœ Redis ์žฅ์• ์— ๋Œ€ํ•œ ๊ฒฝ๋ณด๋ฅผ ์„ค์น˜ํ•œ๋‹ค.

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

โ˜‘ Implement TODO

  • [ ]

Metadata

Metadata

Assignees

Labels

Feature์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ๋ฐ ๊ตฌํ˜„

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions