๋ถ„์‚ฐํ˜• ์†Œ์…œ ๋„คํŠธ์›Œํฌ ๊ตฌ์ถ•์„ ์œ„ํ•œ ํ”Œ๋žซํผ์ธ Mastodon 3.5 ์ถœ์‹œ

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

ํ”„๋กœ์ ํŠธ์˜ ์„œ๋ฒ„ ์ธก ์ฝ”๋“œ๋Š” Ruby on Rails๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Ruby๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ, ํด๋ผ์ด์–ธํŠธ ์ธํ„ฐํŽ˜์ด์Šค๋Š” React.js ๋ฐ Redux ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ JavaScript๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์†Œ์Šค ์ฝ”๋“œ๋Š” AGPLv3 ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ํ”„๋กœํ•„ ๋ฐ ์ƒํƒœ์™€ ๊ฐ™์€ ๊ณต๊ฐœ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฒŒ์‹œํ•˜๊ธฐ ์œ„ํ•œ ์ •์  ํ”„๋ŸฐํŠธ์—”๋“œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ๋Š” PostgreSQL ๋ฐ Redis๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์™ธ๋ถ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ฐœ๋ฐฉํ˜• API๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค(Android, iOS ๋ฐ Windows์šฉ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์žˆ์œผ๋ฉฐ ๋ด‡์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Œ).

์ƒˆ ๋ฆด๋ฆฌ์Šค์—์„œ:

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

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€