Skip to content

๐Ÿš• Spoot-Taxi-Api-Server / 2023 smu capstone project

Notifications You must be signed in to change notification settings

Libienz/Spoot-Taxi-Server

Repository files navigation

image

๐Ÿš•Spoot Taxi Api Server

๐Ÿ“– ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ ๋ฐฐ๊ฒฝ

  • ํ•™์ƒ๋“ค์€ ๋“ฑํ•˜๊ตํ•  ๋•Œ ์ข…์ข… ํƒ์‹œ๋ฅผ ์ด์šฉํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์„ ๋งˆ์ฃผํ•œ๋‹ค.
  • ํ•˜์ง€๋งŒ ํƒ์‹œ์š”๊ธˆ์€ ๋Œ€์ค‘๊ตํ†ต ์š”๊ธˆ์— ๋น„ํ•ด ์ƒ๋‹นํžˆ ๋ถ€๋‹ด๋˜๋Š” ์ˆ˜์ค€์ด๋ฉฐ ๋”์šฑ์ด ํƒ์‹œ ๊ธฐ๋ณธ์š”๊ธˆ์ด 1์ฒœ์› ์ถ”๊ฐ€ ์ธ์ƒ๋˜๋Š” ๋“ฑ ํ•™์ƒ๋“ค์ด ํƒ์‹œ๋ฅผ ์ด์šฉํ•˜๊ธฐ๋Š” ๋” ๋ถ€๋‹ด์Šค๋Ÿฌ์›Œ์ง„ ์ƒํ™ฉ์ด๋‹ค.
  • ํ•™์ƒ๋“ค์€ ํƒ์‹œ ์ด์šฉ ๋นˆ๋„๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•  ์ˆ˜ ์žˆ๊ฒ ์ง€๋งŒ ์ƒ๋ช…๋Œ€ํ•™๊ต ํ•™์ƒ๋“ค์€ ํŠนํžˆ ํ•™๊ต ๊ตํ‰ํŽธ์˜ ํŠน์ˆ˜ํ•œ ์ƒํ™ฉ ๋•Œ๋ฌธ์— ์—ฌ์ „ํžˆ ํƒ์‹œ๋ฅผ ํ•„์š”๋กœ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค. (ex ์‹œ์œ„ ๋“ฑ์œผ๋กœ ๋ฒ„์Šค ์šฐํšŒ)
  • ์ธ์ƒ๋œ ํƒ์‹œ ์š”๊ธˆ์—๋„ ์ƒ๋ช…๋Œ€ํ•™๊ต ํ•™์ƒ๋“ค์€ ์—ฌ์ „ํžˆ ํƒ์‹œ ์ด์šฉ์„ ํ”ผํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์ด๋‹ค.
  • ํ•™์ƒ๋“ค์€ ์ด๋Ÿฌํ•œ ์ƒํ™ฉ์†์—์„œ ์—๋ธŒ๋ฆฌํƒ€์ž„ ๊ฒŒ์‹œํŒ๊ณผ ์นด์นด์˜คํ†ก ์˜คํ”ˆ ์ฑ„ํŒ…์„ ์ด์šฉํ•˜์—ฌ ๋™์Šน์ž๋ฅผ ๋ชจ์ง‘ํ•˜์ง€๋งŒ ์ด๋Š” ๋Œ“๊ธ€์„ ๊ณ„์† ํ™•์ธํ•˜๊ณ  ์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ์„ ์ƒˆ๋กœ ๊ฐœ์„คํ•˜์—ฌ ์ „ํŒŒํ•ด์•ผ ํ•˜๋Š” ๋“ฑ ๋ฒˆ๊ฑฐ๋กœ์šด ์ ์ด ๋งŽ๋‹ค.
  • ์ด์— ๋ณธ ํŒ€์€ ์ธ์ƒ๋œ ํƒ์‹œ์š”๊ธˆ์—๋„ ํ•™์ƒ๋“ค์€ ์—ฌ์ „ํžˆ ํƒ์‹œ ์ด์šฉ์„ ํ”ผํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์ ๊ณผ ๊ธฐ์กด์˜ ํƒ์‹œ ํŒŒํ‹ฐ๋ฅผ ๊ตฌํ•˜๋Š” ๊ณผ์ •์ด ๋ฒˆ๊ฑฐ๋กœ์›€์„ ๋ฌธ์ œ๋กœ ์ •์˜ํ•˜๊ณ  ์†”๋ฃจ์…˜์œผ๋กœ์จ ํƒ์‹œ ๋™์Šน์ž ๋งค์นญ ํ”Œ๋žซํผ Spoot Taxi๋ฅผ ๊ฐœ๋ฐœํ•˜์˜€๋‹ค.

๐Ÿš‚ ํ”„๋กœ์ ํŠธ ์ฃผ์š” ๋‚ด์šฉ

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

    • ์›ํด๋ฆญ ๋งค์นญ

      • ํ•œ๋ฒˆ์˜ ํด๋ฆญ์œผ๋กœ ๋‚ด ์ฃผ๋ณ€ ๋“ฑ๊ตํ–‰ ํƒ์‹œ ํฌ๋ง์ž๋ฅผ ๋งค์นญ
      • ๋งค์นญ์ด ์„ฑ๊ณตํ•  ๊ฒฝ์šฐ ์•Œ๋ฆผ ๋ฐœ์ƒ! ๋ฒˆ๊ฑฐ๋กœ์šด ํ™•์ธ๊ณผ์ • ํ•„์š” X
    • ezgif com-resize ezgif com-resize (1) notify

    • ํ”Œ๋žซํผ ๋‚ด ์ฑ„ํŒ… ์‹œ์Šคํ…œ ๋ฐ ์ง‘ํšŒ ์ •๋ณด ์ œ๊ณต

      • ๋”ฐ๋กœ ์˜คํ”ˆ ์ฑ„ํŒ…๋ฐฉ์„ ํŒ” ํ•„์š” ์—†์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์—์„œ ์•ฝ์† ๊ฐ€๋Šฅ
      • ๋ถ€๊ฐ€์ ์œผ๋กœ ํƒ์‹œ๋ฅผ ์ด์šฉํ• ์ง€ ๊ณ ๋ฏผ ์ค‘์ธ ํ•™์ƒ๋“ค์˜ ๊ด€์‹ฌ์‚ฌ์ธ ์ง‘ํšŒ์™€ ์šฐํšŒ์ •๋ณด ์ œ๊ณต
    • ezgif com-resize (1) rally

๐Ÿ› ๏ธ ํ”„๋กœ์ ํŠธ ๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ์•„ํ‚คํ…์ณ

image

์ฃผ์š” ๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ์„ค๊ณ„ ํฌ์ธํŠธ

  • ์†Œ์ผ“ ์„œ๋ฒ„์™€ api ์„œ๋ฒ„์˜ ๋ถ„๋ฆฌ

    • ํ•˜๋‚˜์˜ ์„œ๋ฒ„๊ฐ€ api๋„ ์„œ๋น„์Šคํ•˜๊ณ  ์œ ์ €๋“ค์˜ ์ฑ„ํŒ…์„ ์œ„ํ•œ ์†Œ์ผ“ ์ปค๋„ฅ์…˜๋„ ์œ ์ง€ํ•  ๊ฒฝ์šฐ ๋„ˆ๋ฌด ๋งŽ์€ ์ผ์„ ๋ถ„๋‹ด
    • ๋‘๊ฐ€์ง€ ์„œ๋ฒ„๋ฅผ ๋‚˜๋ˆ„์–ด scalableํ•œ ์„ค๊ณ„๋ฅผ ์ฑ„์šฉ
    • ์†Œ์ผ“ ์„œ๋ฒ„๋Š” ์†Œ์ผ“ ์ปค๋„ฅ์…˜์„ ์œ ์ง€ํ•˜๊ณ  ์œ ์ €๊ฐ€ ๋ณด๋‚ธ ๋ฉ”์‹œ์ง€๋ฅผ api์„œ๋ฒ„๋กœ ์ „์†กํ•˜๋Š” ์ผ๋งŒ์„ ๋‹ด๋‹น (์†Œ์ผ“ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ Stomp ์‚ฌ์šฉ)
    • api ์„œ๋ฒ„๋Š” api๋ฅผ ์„œ๋น„์Šค ํ•˜๋Š” ์ผ์„ ์ง‘์ค‘์ ์œผ๋กœ ๋‹ด๋‹น
  • ์†Œ์ผ“ ์„œ๋ฒ„์™€ api ์„œ๋ฒ„์˜ ์ž‘์—…์„ ์กฐ์œจํ•˜๋Š” Zookeeper์™€ ๋ถ„์‚ฐํ˜• ๋ฐ์ดํ„ฐ ์ŠคํŠธ๋ฆฌ๋ฐ์„ ์œ„ํ•œ Kafka

    • ์†Œ์ผ“ ์„œ๋ฒ„์™€ api ์„œ๋ฒ„์˜ ํ†ต์‹ ์„ RestApi๋กœ ํ•  ์ˆ˜๋„ ์žˆ์—ˆ์ง€๋งŒ ์™ธ๋ถ€ ํ†ต์‹ ์˜ ๋ณ‘๋ชฉ๊ณผ ๋Š์Šจํ•œ ๊ฒฐํ•ฉ์„ ์ด์šฉํ•  ๊ฒฝ์šฐ ํ–ฅ์ƒ๋˜๋Š” ์•ˆ์ •์„ฑ์„ ๊ณ ๋ คํ•˜์—ฌ kafka ์ฑ„์šฉ
  • ์„œ๋ฒ„ ์ด๋ฒคํŠธ ํ‘ธ์‰ฌ๋ฅผ ์œ„ํ•œ FCM

    • ๋งค์นญ ์„ฑ๊ณต ์•Œ๋ฆผ์„ ์œ„ํ•œ ์„œ๋ฒ„ ์ด๋ฒคํŠธ ํ‘ธ์‰ฌ ๊ธฐ๋Šฅ์„ ์œ„ํ•ด FCM ์ฑ„์šฉ
    • ๋˜ํ•œ ์ง‘ํšŒ์ •๋ณด ์—…๋ฐ์ดํŠธ ์‹œ์—๋„ ์•Œ๋ฆผ์„ ์ฃผ์–ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ ‘์† ๋นˆ๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ๋„๋ก ํ–ˆ์Œ
  • ์ธ์ฆ, ์ธ๊ฐ€ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ SpringSecurity + jwt

    • statelessํ•œ ์ฒ˜๋ฆฌ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์„œ๋ฒ„ ๋ถ€๋‹ด์„ ์ค„์ด๊ธฐ ์œ„ํ•ด jwt ์ฑ„์šฉ

๐Ÿ—บ๏ธ ์—”ํ‹ฐํ‹ฐ ์„ค๊ณ„๋„

image

About

๐Ÿš• Spoot-Taxi-Api-Server / 2023 smu capstone project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages