์ต์ ๋ฆด๋ฆฌ์ค๋ฅผ 2.0.0.zip์ผ๋ก ๋ค์ด๋ก๋ํ ์ ์๋ graphql-subscriptions๋ผ๋ Linux ์ฑ์ ๋๋ค. ์ํฌ์คํ ์ด์ ์ฉ ๋ฌด๋ฃ ํธ์คํ ์ ๊ณต์ ์ฒด์ธ OnWorks์์ ์จ๋ผ์ธ์ผ๋ก ์คํํ ์ ์์ต๋๋ค.
OnWorks์ ํจ๊ป graphql-subscriptions๋ผ๋ ์ด ์ฑ์ ๋ฌด๋ฃ๋ก ๋ค์ด๋ก๋ํ์ฌ ์จ๋ผ์ธ์์ ์คํํ์ญ์์ค.
์ด ์ฑ์ ์คํํ๋ ค๋ฉด ๋ค์ ์ง์นจ์ ๋ฐ๋ฅด์ธ์.
- 1. ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ PC์ ๋ค์ด๋ก๋ํ์ต๋๋ค.
- 2. ํ์ผ ๊ด๋ฆฌ์ https://www.onworks.net/myfiles.php?username=XXXXX์ ์ํ๋ ์ฌ์ฉ์ ์ด๋ฆ์ ์ ๋ ฅํฉ๋๋ค.
- 3. ์ด๋ฌํ ํ์ผ ๊ด๋ฆฌ์์์ ์ด ์์ฉ ํ๋ก๊ทธ๋จ์ ์ ๋ก๋ํฉ๋๋ค.
- 4. ์ด ์น์ฌ์ดํธ์์ OnWorks Linux ์จ๋ผ์ธ ๋๋ Windows ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ ๋๋ MACOS ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์์ํฉ๋๋ค.
- 5. ๋ฐฉ๊ธ ์์ํ OnWorks Linux OS์์ ์ํ๋ ์ฌ์ฉ์ ์ด๋ฆ์ผ๋ก ํ์ผ ๊ด๋ฆฌ์ https://www.onworks.net/myfiles.php?username=XXXXX๋ก ์ด๋ํฉ๋๋ค.
- 6. ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํ๊ณ ์คํํฉ๋๋ค.
์คํฌ๋ฆฐ ์ท
Ad
graphql ๊ตฌ๋
๊ธฐ์
GraphQL ๊ตฌ๋ ์ GraphQL์ pubsub ์์คํ (์: Redis)๊ณผ ์ฐ๊ฒฐํ์ฌ GraphQL์์ ๊ตฌ๋ ์ ๊ตฌํํ ์ ์๋ ๊ฐ๋จํ npm ํจํค์ง์ ๋๋ค. Apollo๋ฟ๋ง ์๋๋ผ ๋ชจ๋ GraphQL ํด๋ผ์ด์ธํธ ๋ฐ ์๋ฒ์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค. GraphQL ๊ตฌ๋ ์ ์์ํ๋ ค๋ฉด ๋จผ์ ์คํค๋ง์์ GraphQL ๊ตฌ๋ ์ ํ์ ์ ์ํ์ธ์. ๋ค์์ผ๋ก ์คํค๋ง ์ ์์ ๊ตฌ๋ ์ ํ์ ์ถ๊ฐํฉ๋๋ค. ์ด์ ๊ฐ๋จํ PubSub ์ธ์คํด์ค๋ฅผ ๋ง๋ค์ด ๋ณด๊ฒ ์ต๋๋ค. EventEmitter๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๊ฐ๋จํ pubsub ๊ตฌํ์ ๋๋ค. ๋์ฒด EventEmitter ๊ตฌํ์ options ๊ฐ์ฒด์ ์ํด PubSub ์์ฑ์๋ก ์ ๋ฌ๋ ์ ์์ต๋๋ค. ์ด์ pubsub.asyncIterator๋ฅผ ์ฌ์ฉํ์ฌ ํ์ํ ์ด๋ฒคํธ๋ฅผ ๋งคํํ์ฌ ๊ตฌ๋ ์ ํ ํ์ธ์๋ฅผ ๊ตฌํํฉ๋๋ค. ๊ตฌ๋ ์์๊ฒ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ ๋ ๊ฐ ๊ตฌ๋ ์๊ฐ ํ์ํ ๋ฐ์ดํฐ๋ง ๊ฐ์ ธ์ค๋๋ก ํด์ผ ํฉ๋๋ค.
๊ธฐ๋ฅ
- ์ฑ๋ ๋งคํ
- ํ์ด๋ก๋ ์กฐ์
- ์ฝ๋ฐฑ ๋ฆฌ์ค๋์ ํจ๊ป ์ฌ์ฉ
- ์ปค์คํ AsyncIterator ๋ํผ
- PubSub ๊ตฌํ
- ๋ชจ๋ GraphQL ํด๋ผ์ด์ธํธ ๋ฐ ์๋ฒ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค(Apollo๋ฟ๋ง ์๋๋ผ).
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด
์ ํ ์คํฌ๋ฆฝํธ
์นดํ ๊ณ ๋ฆฌ
์ด๊ฒ์ https://sourceforge.net/projects/graphql-subscriptions.mirror/์์๋ ๊ฐ์ ธ์ฌ ์ ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ค. ๋ฌด๋ฃ ์ด์ ์ฒด์ ์ค ํ๋์์ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ผ๋ก ์จ๋ผ์ธ์ผ๋ก ์คํํ๊ธฐ ์ํด OnWorks์์ ํธ์คํ ๋์์ต๋๋ค.