๋ด๋ฐฑํ๋ค. โ๋ฌด์์ ๋ฐฐ์ธ ์ ์๋คโ๋ ์๊ฐ์กฐ์ฐจ ์์ด, ์ด๋ ฅ์์ ๋ฌด์์ ์จ์ผ ๋ฉด์ ๊ด์ด ๊ณ ๊ฐ๋ฅผ ๋๋์ด๋๊ฐ๋ฅผ ์ค์ ์ผ๋ก ํ๊ณ ๋ ๋ค.
ํ์/์ธ์ฆ ์๋น์ค ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก ์ค๋ฌด๋ฅผ ํ๊ณ ์๊ณ , ๋๋ถ๋ถ ์จํ๋ ๋ฏธ์ค ํ๊ฒฝ์์ ์ง์ ์ฅ๋น์ ์ธํ๋ผ๋ฅผ ๋ค๋ฃจ๋ค ๋ณด๋, โํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ์ค์ตโ์ด ๋์ค๋ ๊ฐ์๋ ๋ณดํต โ๋ด ํ๊ฒฝ์ด๋์ ๋ค๋ฅด๋๊นโ ํ๋ฉฐ ๊ฑด๋๋ฐ๊ณค ํ๋ค. ์ด ๊ฐ์๋ Terraform์ผ๋ก AWS EC2์ RDS๋ฅผ ๋ค๋ฃจ๋ ํํธ๊ฐ ์์ง๋ง, ์ด์ํ๋ฆฌ๋งํผ ๊ฑฐ๋ถ๊ฐ์ด ์์๋ค.
Terraform์ ์๊ฐํ๋ฉด์๋ ๋ง์น bash ์คํฌ๋ฆฝํธ์ฒ๋ผ ๋จ์ํ๊ฒ, โ์ ์ด๊ฑธ ์ฐ๋์งโ์ โ์ด๊ฑธ ํตํด ์ฑ๋ฅ ๊ฐ์ ์งํ๋ฅผ ์ด๋ป๊ฒ ์์งํ๋์งโ์ ์ง์คํ ๋๋ถ์ด๋ค.
๊ฐ์ ํ๋ฆ ์์ฒด๊ฐ
โ์ ํ์ํ๊ฐ โ ์ด๋ป๊ฒ ๊ตฌ์ฑํ๋๊ฐ โ ์์น๋ก ์ฆ๋ช
ํ๋ ค๋ฉด ๋ฌด์์ด ํ์ํ๊ฐโ
๋ก ์ ๋ฆฌ๋์ด ์์ด์, ๋จ์ํ ์ธํ๋ผ ์ค์ต์ด ์๋๋ผ ์ด๋ ฅ์์ ํ ์ค๋ก โ์ฑ๋ฅ ์์น๋ฅผ ๊ทผ๊ฑฐ๋ก ๊ฐ์ ์์ ๋์ถํ๋คโ๋ผ๊ณ ์ธ ์ ์๊ฒ ๋ง๋ค์ด์ค๋ค.
๋๋ ์ค์ ๋ก ๋ฌผ๋ฆฌ ์๋ฒ๊ฐ ๊ฐ๋ ์ฐฌ ์จํ๋ ๋ฏธ์ค ๋ ํ๊ฒฝ์์ ์ธ์ฆ ์์คํ
์ ์ด์ํ๊ณ ์๋ค.
Web01, Web02, ARS, Staging, DB ๋ฐฑ์
์ฅ๋น๊น์ง ์ค๋ฌผ์ด ์ ๋ถ ์๋ ํ๊ฒฝ์ด๋ค.
๊ทธ๋ฐ ํ๊ฒฝ์์๋ ์ด ๊ฐ์์์ ์ค๋ช
ํ Prometheus, Grafana, CloudWatch ์งํ ์ค๊ณ์ ๋ถํ ํ
์คํธ โ ๊ฐ์ ์ฌ์ดํด์ ๊ทธ๋๋ก ์ ์ฉ ๊ฐ๋ฅํ๋ค.
ํด๋ผ์ฐ๋๋, ์จํ๋ ๋ฏธ์ค๋๋ ์ด ๊ฐ์์์ ์ค์ํ์ง ์์๋ค.
3์ฃผ์ฐจ ์ธ๋ฑ์ค ์ต์ ํ ๊ฐ์๋ ์ฒ์์ ํํ DB ๊ธฐ๋ณธ๊ธฐ ์์ค์ผ ์ค ์์๋ค.
๊ทธ๋ฐ๋ฐ ์คํ ๊ณํ์ ์ฝ๊ณ ๋ณ๋ชฉ์ ์ถ์ ํ๋ ์์ผ ์์ฒด๋ฅผ ๊ต์ ํด์ค๋ค.
Covering Index์ ์๋ฏธ๋ ๋จ์ํ โ๋น ๋ฅด๋ค๋๋ผโ ์์ค์ด ์๋๋ผ, I/O ๋น์ฉ ์ ๊ฐ๊ณผ ์ ์ฒด ํ๋ ์ ๋ต์์์ ์์น๋ฅผ ๋ช
ํํ ์ง์ด์ค๋ค.
๋๋ ์ค์ ๋ก ์ ์ ํ์ธ ์ด๋ ฅ API๋ฅผ ํ๋ํ ๋, ๋จ์ํ ์ฟผ๋ฆฌ ๊ธธ์ด๋ง ์ค์ด๋ ค ํ๋ ๊ฒฝํ์ด ์์๋๋ฐ,
๊ฐ์๋ฅผ ๋ฐ๋ผ๊ฐ๋ค ๋ณด๋ โ์ด๊ฑด ๋ฒ์ ์ธ๋ฑ์ค ์กฐ๊ฑด์ด ์ ๋จนํ ์ผ์ด์ค์๋คโ๋ผ๋ ๊ฑธ ๋ฐ๋ก ์บ์นํ ์ ์์๋ค.
๊ทธ๋ฐ ์ข
๋ฅ์ ๊ฐ๊ฐ์ ์ค๋ก์ง ์ผ์ด์ค๋ฅผ ์ค์ฌ์ผ๋ก ์ค๋ช
ํ๋ ๊ฐ์์์๋ง ์ป์ ์ ์๋ค.
์ดํ ํธ๋์ญ์
, ๋ฝ ์ ๋ต, ์ฝ๋์ต์ ํ ๊ฐ์๋ ๊ธฐ๋๋๋ค.
์ด ๊ฐ์๋ ๋จ์ํ ์ค๋ฌด ์ง์์ ์ ๋ฌํ์ง ์๋๋ค.
โ๊ทธ ๊ฒฝํ์ ์ด๋ ฅ์์ ์ด๋ป๊ฒ ์ ์ ๊ฒ์ธ๊ฐโ๊น์ง ์๋ดํด์ฃผ๋ ์ ์ผํ ๊ฐ์๋ค.
๊ทธ๋์ ๋๋ ์ด์ ์ด๋ ฅ์์ "์ ์ฐ ๋ฐฐ์น ํ๋ก์ธ์ค ์๋ํ ๋ฐ ํต๊ณ ์ฒ๋ฆฌ ์์คํ
๊ฐ์ "์ฒ๋ผ ์ ๊ณ ๋์ด๊ฐ๋ ํญ๋ชฉ์,
๊ฐ์์์ ๋ฐฐ์ด ์์นํ๋ ์ฑ๊ณผ ํํ, ๋ฌธ์ ํด๊ฒฐ ์ค์ฌ์ ๊ตฌ์ฑ ๋ฐฉ์, ๊ทธ๋ฆฌ๊ณ ๊ตฌ์กฐ์ ์ ํ์ ์๋ฏธ๋ฅผ ๋๋ฌ๋ด๋ ํ๋ฆ์ ๋ฐ์ํด์ ์๋์ ๊ฐ์ด ๋ฐ๊ฟจ๋ค.
- Oracle ํ๋ก์์ + Excel ๊ธฐ๋ฐ ํต๊ณ ์์คํ
์ผ๋ก ์ธํด ์ ํ๊ท 1,400๋ง ๊ฑด์ ๋ณธ์ธ์ธ์ฆ ๊ฑฐ๋ ROW ๋ฐ์ดํฐ๋ฅผ ์์์
์ฒ๋ฆฌํ๋ฉฐ 2์๊ฐ ์ด์ ์์, ์
๋ฌด ์ถฉ๋ ๋ฐ ์ธ์ ์ค๋ฅ ์ํ์ด ์์กด
- Spring Scheduled + Crontab ๊ธฐ๋ฐ์ E2E ์๋ํ ๋ฐฐ์น ์์คํ
๊ตฌ์ถ
- Crontab์ผ๋ก ๋ณ๋ ฌ ์คํ ์ถฉ๋ ๋ฐฉ์ง ๋ฐ ์คํ ์ฃผ๊ธฐ ์ ์ฐํ
- Apache POI ๊ธฐ๋ฐ์ ๋ฆฌํฌํธ ์์ฑ ์๋ํ + ๊ด๋ฆฌ์ ์ด๋ฉ์ผ ์๋ ๋ฐ์ก ํฌํจ
- ์ฒ๋ฆฌ ์๊ฐ 2์๊ฐ โ 15๋ถ(88% ๋จ์ถ), ์ ์ฐ ์ค๋ฅ์จ 0% ์ ์ง, ์๋ํ๋ ๋ฆฌํฌํธ๋ก ์ ๊ด ๋ถ์์ ์์ฌ๊ฒฐ์ ์๋ ํฅ์
์ดํ ์ค๋ฌด์์ ์ด๋ค ๊ตฌ์กฐ๊ฐ ์์ ์ ์ด๊ณ , ์ด๋ค ์ค๊ณ๊ฐ ์ ์ง๋ณด์์ ์ ๋ฆฌํ์ง๋ฅผ ํ๋จํ๋ ๊ธฐ์ค์ด ์๊ฒผ๊ณ ,
์ด ๊ธฐ์ค์ ๊ณง๋ฐ๋ก ๋ด ์ด๋ ฅ์์ ์ฌ๊ณ ๋ฐฉ์์ ๋
น์๋ค๊ณ ์๋ค.
๊ทธ๊ฑด ๋จ์ํ ์คํฌ ์
์ด ์๋๋ผ ์ค๋ ฅ์ ๋ง๋ก ํ์ด๋ผ ์ ์๋ ๋ฅ๋ ฅ์ ๋ณํ๋ค.
์ด ๊ฐ์๋ '๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก์ ๋ด๊ฐ ๋ฌด์จ ์ผ์ ํ๋์ง๋ฅผ ๋งํ ์ ์๊ฒ ํด์ฃผ๋ ๊ฐ์โ๋ค.
ํด๋ผ์ฐ๋๊ฐ ์๋์ด๋, ์ต์ ๊ธฐ์ ์ด ์๋์ด๋,
์ด๋ ฅ์์ ๋ฌธ์ฅ์ ๋ฐ๊พธ๊ณ ์ถ์ ๊ฐ๋ฐ์๋ผ๋ฉด ๊ผญ ๋ค์ด์ผ ํ ๊ฐ์๋ค.