-
Notifications
You must be signed in to change notification settings - Fork 0
Description
๐ ๏ธ ๋ฆฌํฉํ ๋ง์ด ํ์ํ ๋ถ๋ถ
ํ
์คํธ ๊ฒฐ๊ณผ ์ถ์ ๊ณผ์ ์์ ๊ฐ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ค๋ ์ํฉ๊ณผ ๋์ผํ๊ฒ, ์ถ์ ๋ํ ์๋ต ์๊ฐ์ ์ค์ด๋ฉด ์ข๊ฒ ๋ค๋ ํ๋จ์ด ๋ค์๋ค.
์ถ์ ์์ฒญ์์ DB ์ปค๋ฅ์
์ ๋ ์ํฉ์์ ์ผ์ด๋๋ค.
- ์ถ์ํ๊ธฐ ์ํด DB์์ "์๊ฐ์ ์ฒญ"์ ๋ณด๋ฅผ ๊ฐ์ ธ์จ๋ค.
์ฌ๊ธฐ์ ์๊ฐ์์ ๋ง๋์ง, ์์ ์ ์ด๋ ค์๋์ง ํ์ธ ๊ฐ๋ฅํ๋ค. - ๊ฐ์ข ๊ฒ์ฆ ์ดํ, DB์ ์ถ์ ๊ฐ์ฒด๋ฅผ ์ ์ฅํ๋ค.
1. ์๊ฐ์ ์ฒญ ์ ๋ณด ์บ์ ํ์ฉ
1๋ฒ ์ฌํญ์ ์ด๋ฏธ ์๊ฐ์ ์บ์ฑ์ด ๋์ด ์์ด์, ๊ทธ๊ฑธ ํ์ฉํ๋ฉด ๋ ๊ฒ ๊ฐ๋ค!
์บ์ฑ์ ๋์
ํ ๋ ํจ๊ป ํ์ฉํ์ผ๋ฉด ๋ ์ข์์ ๊ฒ ๊ฐ๋ค.
๊ทธ๋ฆฌ๊ณ ํ
์คํธ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ 2๋ฒ ์ฌํญ๋ ์๋ต ์๊ฐ์ ์ค์ฌ๋ณผ ์ ์์ผ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.
๋์ ์ดํ 14.725์ด์์ 6.481์ด๋ก ์ค์ด๋ค์๋ค.
2. ์ ์ฅ ๋ถํ ์ค์ด๊ธฐ
์ฒ์์๋ ๋ถํ๋ฅผ ์ค์ด๊ธฐ ์ํด ํ ๊ฐ์ ๊ณณ์ ์ถ์ ๋ฐ์ดํฐ๋ค์ ์ ์ฅํด์ n์ด๋ง๋ค pollingํด ํ๋ฒ์ ์ฌ๋ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ค ํ๋ค.
๋ถ๋ช
ํ ์ด๋ฐ ๋ฐฉ์์ ๋ถ๋ช
DB์ ๋ถํ๋ฅผ ์ค์ฌ์ค ์ ์๋ค.
ํ์ง๋ง,
- ์ ์ฅ์ ์คํจํ ๋ฐ์ดํฐ์ ๋ก๊น ์ด๋ ์ถ์ ์ด ์ด๋ ต๋ค.
- ์ด๋ฒคํธ ๋น๋๊ธฐ ์ฒ๋ฆฌ์ ์ค๋ ๋ ํ์ ๊ธฐ๋ณธ SimpleAsyncTaskExecutor์์ ThreadPoolTaskExecutor๋ก ๋ณ๊ฒฝํ๋ฉด,
์ค๋ ๋ ํ ์ฌ์ด์ฆ์ ํ ์ฌ์ด์ฆ๋ฅผ ์กฐ์ ํ ์ ์๋๋ฐ, ์ ์ ํ๊ฒ ํ์ฉํ๋ฉด ๊ตฌํํ๋ ค๋ ๊ธฐ๋ฅ๊ณผ ๋น์ทํ ํจ๊ณผ๋ฅผ ๋ผ ์๋ ์์ ๊ฒ ๊ฐ๋ค.
์์ฒญ์ด ๋ชฐ๋ ค๋ ๊ฒฐ๊ตญ ํ์์ ๋๊ธฐํ๊ฒ ๋๋ค.
๊ทธ๋ฆฌ๊ณ , ๋ ์ค์ํ ๊ฒ์ ์๋ต ์ง์ฐ์ ์ค์ด๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ค.
๋ฐ๋ผ์ ์์์ ์ธ๊ธํ ๋ณต์กํ insert๋ฅผ ๊ตฌํํ์ง ์๊ณ , ์ด๋ฒคํธ๋ฅผ ๋ฐํํด์ ์๋ต ์ง์ฐ์ ์ค์ด๊ฒ ๋ค.
๋ฌธ์ ๋ ์ต๊ทผ ์ถ์ ์กฐํ ๊ธฐ๋ฅ์ธ๋ฐ, (#117 )
์ค๋ ๋ ํ ์ฌ์ด์ฆ์ ๋ฌธ์ ๋ก ์ ์ ์ถ์์ด ๋ฐ๋ฆฌ๊ฒ ๋๋ ๊ฒฝ์ฐ ์ ๋๋ก ์ถ์ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ธฐ ์ด๋ ค์ธ ์ ์๋ค.
์๋ฅผ ๋ค์ด ์ค์ ์ถ์ ์ด๋ฒคํธ๋ฅผ ๋ฐํํ๊ณ , DB์ ์ ์ฅ๋๋ ์ฌ์ด์ ์ ์ ๊ฐ ์์ ์ ์ถ์์ ํ์ธํ๋ค๋ฉด ์ด๋ป๊ฒ ๋ณด์ฌ์ค์ผ ํ๋๊ฐ?
์ดํ ์ค์ ๋ก ๋ฐ์๋ ๊ฒ์ ์ด๋ป๊ฒ ์ ์ ์๋๊ฐ?
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์๋์ ๊ฐ์ ๊ณผ์ ์ ๋ฐ๋ฅด๊ฒ ๋ค
- ์ถ์์ ์ด๋ฒคํธ๋ฅผ ๋ฐํํ๊ณ ๋น ๋ฅด๊ฒ ์ ์ ์๊ฒ ์๋ตํด์ค๋ค.
- ์ด๋ ์ถ์ ๋ฒํธ๊ฐ ์ผ์นํ๋ค๋ฉด, ์ด๋ฒคํธ ๋ฐํ๊ณผ ๊ฐ์ด ์ถ์ ์ ์ฒญ์ ์บ์ฑํ๋ค.
์ ์ ์๊ฒ๋ "์ถ์ ์๋ ์ค.."๊ณผ ๊ฐ์ด ๋ณด์ฌ์ง๋ฉด ๋ ๊ฒ ๊ฐ๋ค. - ์ดํ, ์ด๋ฒคํธ ์ฒ๋ฆฌ ๊ณผ์ ์์ DB์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ , ์ฑ๊ณต ์๋ต์ด ์ค๋ ๊ฒฝ์ฐ ์บ์ฑ๋ ์ถ์ ์ ์ฒญ ๋ฐ์ดํฐ์ ์ถ์์ด ๋ฐ์ ๋์์์ ํ์ํ๋ค.
-> ์ ์ ์๊ฒ๋ "์ถ์ ์ฑ๊ณต"๊ณผ ๊ฐ์ด ๋ณด์ฌ์ง๋ฉด ๋ ๊ฒ์ด๋ค.
โ Refactoring TODO
- ์ถ์ ์๋์ ์๊ฐ ์ฌ๋ถ๋ฅผ ํ์ธํ ๋, ์บ์ฑ๋ ๋ฐ์ดํฐ๋ฅผ ํ์ฉ
- Async ์ค์ ๋ณ๊ฒฝ
- ์บ์ฑ๋ "์ถ์ ์์ฒญ ๊ธฐ๋ก" ๊ฐ์ฒด ์์ฑ
- ์ถ์์ ์ด๋ฒคํธ ๋ฐํ + ์บ์ฑ ๊ตฌํ
- ์ด๋ฒคํธ ์ฒ๋ฆฌ ์ฑ๊ณต์ (DB ์ ์ฅ) ์บ์ฑ ๋ฐ์ดํฐ ๋ณ๊ฒฝ ๊ตฌํ


