Amazon GameLift๋ AWS์์ ์ ๊ณตํ๋ ๋ฉํฐํ๋ ์ด์ด ๊ฒ์ ์๋ฒ์ ๋ฐฐํฌ, ์ด์, ํ์ฅ์ ์๋ํํด์ฃผ๋ ๊ด๋ฆฌํ ์๋น์ค์ ๋๋ค. ํนํ Unreal Engine, Unity, C++ ๋ฑ์ผ๋ก ๋ง๋ ๊ฒ์ ์๋ฒ๋ฅผ ์ง์ ์ด์ํ์ง ์๊ณ ๋ ์ ์ธ๊ณ์ ์์ ์ ์ผ๋ก ๋ฐฐํฌํ ์ ์๋๋ก ๋์ต๋๋ค.
๐ฎ Amazon GameLift๋?
Amazon GameLift๋ ์ธ์ ๊ธฐ๋ฐ ๋ฉํฐํ๋ ์ด์ด ๊ฒ์์ ์ํด ํด๋ผ์ฐ๋์์ ์ ๋ ดํ ์ ์ฉ ์๋ฒ๋ฅผ ๋ฐฐํฌ, ์ด์ ๋ฐ ํ์ฅํ ์ ์๋ ์๋น์ค์ ๋๋ค. AWS ๊ธ๋ก๋ฒ ์ปดํจํ ์ธํ๋ผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋์ด ์ ์ธ๊ณ ํ๋ ์ด์ด ์์์ ๋ง๊ฒ ๋ฆฌ์์ค ์ฌ์ฉ๋์ ๋์ ์ผ๋ก ์กฐ์ ํ๋ฉด์ ๊ณ ์ฑ๋ฅ, ๊ณ ์ ๋ขฐ๋ ๊ฒ์ ์๋ฒ๋ฅผ ์ ๊ณตํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. AWS ๋ฌธ์
๐งฉ ํต์ฌ ๊ฐ๋ ์์ฝ
- ๋ชฉ์ : ๊ฒ์ ์๋ฒ๋ฅผ ํด๋ผ์ฐ๋ ์์์ ์๋์ผ๋ก ๋ฐฐํฌํ๊ณ ์ค์ผ์ผ๋งํ๋ ๊ฒ
- ์ง์ ๊ฒ์ ์์ง: Unreal Engine, Unity, C++, C# ๋ฑ
- ์๊ธ ๋ชจ๋ธ: EC2 ์ฌ์ฉ ์๊ฐ + ๋ฐ์ดํฐ ์ ์ก๋ ๊ธฐ๋ฐ ์๊ธ (์จ๋๋งจ๋/์คํ ์ ํ ๊ฐ๋ฅ)
- ํน์ง: ๊ณ ์ฑ๋ฅ ์ ์ง์ฐ ๋คํธ์ํฌ, ์ ์ ๊ธฐ๋ฐ Auto Scaling, ๊ธ๋ก๋ฒ ์ธํ๋ผ
๐ GameLift ์ฃผ์ ๊ธฐ๋ฅ
1. Fleet
- ๊ฒ์ ์๋ฒ๋ฅผ ๋ฐฐํฌํ๋ ๋ฌผ๋ฆฌ์ /๊ฐ์ ์ธ์คํด์ค๋ค์ ์งํฉ
- EC2 ํ์ , ์ง์ญ, ์คํ/์จ๋๋งจ๋ ์ฌ๋ถ ๋ฑ์ ์ค์ ๊ฐ๋ฅ
- Fleet์ GameLift Server Binary๋ฅผ ์คํํจ
2. Game Session & Player Session
- Game Session: ํ๋์ ๊ฒ์ ๋ฐฉ. ํ๋ ์ด์ด๋ค์ด ์ฐธ์ฌํ๋ ๊ฒ์ ์๋ฒ ์ธ์คํด์ค
- Player Session: ๊ฐ๋ณ ์ ์ ๊ฐ Game Session์ ์ฐธ๊ฐํ ๊ธฐ๋ก (์ธ์ฆ ๋ฐ ์ ์ ์ถ์ )
3. Matchmaking (FlexMatch)
- GameLift์ ๋งค์น๋ฉ์ดํน ์์คํ
- ๋งค์นญ ๋ก์ง ์ ์ ๊ฐ๋ฅ (์: ์ค๋ ฅ, ํ ๊ธฐ๋ฐ ๋ฑ)
- ๋งค์นญ๋ ์ ์ ๊ทธ๋ฃน์ ๋ํด Game Session ์๋ ์์ฑ ๊ฐ๋ฅ
4. Auto Scaling
- CCU(๋์ ์ ์์ ์) ๊ธฐ๋ฐ์ผ๋ก Fleet ์ฉ๋ ์๋ ์กฐ์
- ํผํฌ ์๊ฐ์๋ ์๋ฒ๋ฅผ ๋๋ฆฌ๊ณ , ๋นํ์ฑ ์๊ฐ์๋ ์ค์
5. Realtime Servers (๊ฒฝ๋ ์๋ฒ)
- Node.js ๊ธฐ๋ฐ ๊ฐ๋จํ ๊ฒ์ ์๋ฒ๋ฅผ ๋น ๋ฅด๊ฒ ๋ง๋ค ์ ์๋ ๊ธฐ๋ฅ
- ๋น ๋ฅธ ํ๋กํ ํ์ดํ์ฉ
6. GameLift Anywhere
- ์จ ํ๋ ๋ฏธ์ค(On-Premise) ๋ ํ ํด๋ผ์ฐ๋์ ๊ตฌ์ถ๋ ์๋ฒ๋ GameLift ๊ด๋ฆฌ ํ์ ๋ ์ ์์
๐ GameLift ์๋ ํ๋ฆ ์์ฝ
- ๊ฒ์ ์๋ฒ ๋น๋ ์ ๋ก๋: ๊ฒ์ ์๋ฒ ์คํ ํ์ผ์ GameLift์ ์ ๋ก๋ํฉ๋๋ค.
- Fleet ์์ฑ: ์ ๋ก๋๋ ๋น๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก Fleet์ ์์ฑํ์ฌ ์๋ฒ๋ฅผ ๋ฐฐํฌํฉ๋๋ค.
- ๊ฒ์ ์ธ์ ์์ฑ: ํ๋ ์ด์ด์ ์์ฒญ์ ๋ฐ๋ผ GameLift๊ฐ ๊ฒ์ ์ธ์ ์ ์์ฑํฉ๋๋ค.
- ํ๋ ์ด์ด ์ธ์ ์์ฑ: ํ๋ ์ด์ด๊ฐ ๊ฒ์ ์ธ์ ์ ์ฐธ์ฌํ ์ ์๋๋ก ํ๋ ์ด์ด ์ธ์ ์ ์์ฑํฉ๋๋ค.
- ๊ฒ์ ํ๋ ์ด ์งํ: ํ๋ ์ด์ด๋ ์์ฑ๋ ์ธ์ ์ ์ ์ํ์ฌ ๊ฒ์์ ํ๋ ์ดํฉ๋๋ค.
- ์ธ์ ์ข ๋ฃ ๋ฐ ๋ฆฌ์์ค ์ ๋ฆฌ: ๊ฒ์ ์ธ์ ์ด ์ข ๋ฃ๋๋ฉด ๋ฆฌ์์ค๋ฅผ ์ ๋ฆฌํ๊ณ , ํ์ํ ๊ฒฝ์ฐ Auto Scaling์ ํตํด ์๋ฒ ์๋ฅผ ์กฐ์ ํฉ๋๋ค.
โ ์ฅ์
- ์๋ฒ ์ด์ ์๋ํ: ๋น๋๋ง ์ฌ๋ฆฌ๋ฉด ๋ฐฐํฌ, ํ์ฅ, ๋ชจ๋ํฐ๋ง์ด ์๋
- ๊ธ๋ก๋ฒ ์ธํ๋ผ: AWS์ ์ฌ๋ฌ ๋ฆฌ์ ์์ ๋น ๋ฅด๊ฒ ํ์ฅ ๊ฐ๋ฅ
- ๋น์ฉ ์ ๊ฐ: ์คํ ์ธ์คํด์ค ๋ฐ Auto Scaling์ผ๋ก ์ ํด ๋น์ฉ ์ต์ํ
- Unreal ์์ ์ง์: GameLift Server SDK์์ Unreal 5 ๊ณต์ ์ง์
โ๋จ์ / ์ ์์ฌํญ
- ์ด๊ธฐ ์ง์ ์ฅ๋ฒฝ์ด ๋์ (IAM, ๋น๋ ๊ตฌ์ฑ, SDK ํตํฉ ํ์)
- ๋น์ฉ ์ถ์ ์ด๋ ค์ (ํธ๋ํฝ, ์คํ ๋ฆฌ์ง, ๋ก๊ทธ ๋ฑ ๋ถ๊ฐ์๊ธ ์ฃผ์)
- ์๋ฒ ํ์ ์ ๋ฐ๋ผ ์ธํ ๋ณต์ก๋ ์ฐจ์ด ์์ (FlexMatch + Queue + Fleet ๋ฑ ๊ตฌ์ฑ ํ์)