๋ค๋ค ์๋ค์ํผ ํ์ฌ์์ ์์ฃผ ์ฌ์ฉํ๋ ์๋ฆฌ์ผ๋ผ์ด์ ๋ค.
ํนํ protobuf, message pack์ ์์ฃผ ์ฌ์ฉํ๋ค.
์๋ค๋ค์ ํจํท ์ ์ก์ ์ฐ์ธ๋ค.
๊ตฌ๊ธ protobuf๋ ๋๊ฒ ์๋ฒ๊ฐ c++, ์์ง์ด ์ ๋ํฐ์ผ ๋ ๋ง์ด ์ฌ์ฉํ๋ค.
์ค๊ฒฌ/๋๊ธฐ์ ์์ ๋ง์ด ์ด๋ค.
message pack์ ์๋ฒ์ ์์ง์ด ๋ ๋ค c#์ผ ๋ ์ฌ์ฉํ๋ค.
๋น๊ต์ ์์ ๊ธฐ์ ์์ ๋ง์ด ์ด๋ค.(์ง์ง ์ธ์์ ๊ฐ์ ๊ฑฐ๋ ๊ฐ๋ฐ๋ ฅ ํ๋ฌ๋ฆฌ๋ ์ข์๋ง๊ณ )
์๋ฅผ ๋ค์ด ๋ธ๋์๋ฐ์ด๋ฒ:์ดํฐ๋ ๋ฆฌํด๋ ๋ฉ์์ง ํฉ์ ์ฌ์ฉํ๋ค.
message pack์ ๊ฒฝ์ฐ protobuf์ฒ๋ผ .proto ํ์ผ์ ์์ฑํ ํ์๊ฐ ์์ง๋ง dynamic resolver๋ฅผ ์ฌ์ฉํ ์ ์์ด ์ฝ๋ ์์ฑ๊ธฐ๋ฅผ ํตํด ๋ฉํ ์ฝ๋๋ฅผ ์์ฑํด์ผํ๋ค.
(๋ฌผ๋ก IL2CPP ๋น๋์ ๊ฒฝ์ฐ)
ํ์ฌ ํ๋ก์ ํธ์์ ์์ ์ ์ฝ์ด์ ๋ฐ์ด๋๋ฆฌ ๋ฐ์ดํฐ ํ์ผ์ ๋ง๋ ํ AWS ์ธ์คํด์ค์ ์ฌ๋ ค๋์ผ๋ฉด byte array๋ฅผ ๊ฒ์ ๋ก๋ฉ์ ์๋ฒ์์ ๋ณด๋ด์ฃผ๋ ์์คํ ์ ๋ง๋ค๊ณ ์๋ค.
์์ฃผ ๋ณ๊ฒฝ๊ฐ๋ฅํ๊ฑฐ๋ ๊ธด๊ธํ๊ฒ ๋์ํด์ผํ๋ ๋ฐ์ดํฐ -> ์๋ฒ์์ byte array๋ก ๋ค๊ณ ์๋ค๊ณ ์ด์ฃผ๋ ํ์.
์์ ๋ณ๊ฒฝ ํ ํ์๊ด๋ฆฌ ํ๋ก๊ทธ๋จ์ ์ปค๋ฐ์ ์๋ฒ watcher์์ ๊ฐ์ง ํ byte array ์์ฑ. ์์ฑํ์ธ ํ ํด๋ผ์ด์ธํธ์ ๋ฐ์ดํฐ ์ฌ๋ก๋ฉ ํจํท ๋ณด๋ธ๋ค.
๋ฃธ ๊ธฐ๋ฐ ๊ฒ์์ผ ๊ฒฝ์ฐ, ๊ฒ์์ด ๋๋ ํ. ์ค์๊ฐ์ผ ๊ฒฝ์ฐ ๊ทธ ์ํ๋ก ๋ฐ๋ก ๋น๋๊ธฐ ๋ก๋ฉ.
์๋ฒ์์ ๋น๋๊ธฐ ๋ก๋ฉ ์ค์๋ ๋ชจ๋ ์๋ฒ๋ก ํจํท์ ๋ณด๋ด๋ ํ๋์ ๋ฝ์ ๊ฑธ์ด ๋ก๋ฉ์ด ๋๋ ํ ํจํท ํ์์ ๋ค์ ํจํท ๋ณด๋ด๋๋ก ํ๋ค.
์์ฃผ ๋ณ๊ฒฝ๋์ง ์๊ณ ์ฉ๋์ด ํฐ ํ ์ค์ฒ, ๋ชจ๋ธ๋ง ๋ฑ ํ์ผ์ aab๋ก ๋ฒ๋ค๋งํ๋ค.
flatbuffer
bad api
๋ํผ ๋ง๋ค์ด์ ์ฐ๋ฉด ์ ๋นํ ์ธ๋งํด... ๊ทธ๋๋ ๊ฐ๋ ์ข๊ฐ๊ธด ํจ
๋ธ์ ์๋ฒ๊ฐ C#์ด์๊ตฌ๋
์๋ฒ๊ฐ C#์ธ์ง๋ ๋ชจ๋ฆ. ์์ธกํ๋ ๊ฑฐ์ง.