๋ฉ๋ชจ๋ฆฌ ๋ถ์กฑ์ผ๋ก ์ธํ ์ฅ์
ec2์ ๋ค์ํ ์คํ์ ์ค์ ํ ์ ์๋ค.
ํ๋ก์ ํธ ๋ฐฐํฌ ์ ์ด์๊ณ ํ ์คํธ ๋จ๊ณ์๊ธฐ์ ๋น์ฐํ t2.small๋ก ์ก์๋์๋ค. ํ์ง๋ง ์๋ฒ๋ฅผ ์คํํ ๋ค ์๊ฐ์ด ์ง๋๋ฉด ์ด๋์๊ฐ ec2๊ฐ ๋ป์ด์์๋ค. ์ด์ ๋ ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ ์๋ค. ํ์ฌ ์ฌ์ฉ์ค์ธ ๋ฉ๋ชจ๋ฆฌ ์์ ํ์ธํด ๋ดค๋๋ ๊ฑฐ์ ๋ชจ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ก์๋จน๊ณ ์์๋ค.
ํ์ง๋ง ๊ทธ๋ ๊ฒ ํฌ์ง๋ ์์ ์๋ฒ ํ๋๋ฅผ ์คํํ๋ค๊ณ 1GB ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ค ์ก์๋จน๋๊ฒ ์์ํ๊ณ ์ฌ๋ฌ ์ฌ๋๋คํํ ๋ฌผ์ด๋ดค์ง๋ง ๋ก์ง์ด ๋ฌธ์ ์ธ๊ฑฐ ์๋๋๋ ๋ต๋ณ์ ๋ง์ด ๋ฃ๊ฒ ๋๋ค.
๋ฉ๋ชจ๋ฆฌ ๋์ ์์ฌ
๋ฉ๋ชจ๋ฆฌ ๋์๊ฐ ๋๋ ๋ถ๋ถ์ด ์๋๊ฐ ํด์ JAVA GC์ ๋ํด ์์๋ณด๊ธฐ๋ ํ์ง๋ง ๋ด ์ํฉ์ ํด๋นํ์ง ์์๋ค. GC์ ์๋ฉธ๋์ง ์๋ ์ฌ๋ฌ ์ํฉ๋ค์ด ๋ง์์ง๋ง ๊ทธ ์ค ๋ด๊ฐ ์ค์ํ ์๋ ์๊ฒ ๋ค ํ๋ ๋ถ๋ถ์ Map ๋ถ๋ถ์ด์๋ค. Map์ ์ฌ์ฉํ ๋ Key๊ฐ์ผ๋ก ์ปค์คํ ํ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ๋ Java์์ ์ ๊ณตํ๋ GC์ ์๋ฉธ๋์ง ์๋๋ค๊ณ ํ๋ค. ๋ํ Map์๋ ๊ฐ๋ ฅํ ์ฐธ์กฐ๊ฐ ์์ด์, ๋ด๋ถ ๊ฐ์ฒด๊ฐ ์ฌ์ฉ๋์ง ์์ ๋๋ GC ๋์์ด ๋์ง ์๋๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ WeakHashMap์ ์ฌ์ฉํ ์ ์๋ค.
[ec2 JVM ๋ฉ๋ชจ๋ฆฌ ๋์ ์ฒดํฌ]
https://dgjinsu.tistory.com/24
๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ง์ด ์ก์๋จน์๋ ์ด์
colony ํ๋ก์ ํธ๋ ํ๋ก ํธ ๊ฐ๋ฐ์ 2๋ช , ๋ฐฑ์๋ ๊ฐ๋ฐ์ 2๋ช ์ด์ ์งํํ์ง๋ง ๋ ์ ์ธ ๋ชจ๋ ์ธ์์ด ํ๋ก์ ํธ๊ฐ ์ฒ์์ด์๊ธฐ์ ๋ฆฌ์กํธ๋ฅผ ์ฌ์ฉํ๋๋ด ๋ฌด๋ฆฌ๊ฐ ์์๋ค. ๋ฆฌ์กํธ๋ ๋๋ ์ ๋ชจ๋ฅด๊ธฐ์ ๋์์ ์ค ์ ์์๋ค. ๊ทธ๋์ ์ด๋ฏธ ์ฌ์ฉํด๋ณธ ํ์๋ฆฌํ๋ฅผ ์ฌ์ฉํด view๋ฅผ ๊ตฌ์ฑํ์๋ค. ๊ฒฐ๊ตญ ์๋ฒ์ view ๋ฐ์ดํฐ๊น์ง ์ ๋ถ ์ฌ๋ผ๊ฐ๊ฒ ๋๊ณ ์์ฐ์ค๋ฝ๊ฒ ๋ฌด๊ฑฐ์์ง ์ ๋ฐ์ ์์๋ค. ์ ๋ง ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ ๊ฐ ๋ง๋์ง ํ์ธํ๊ธฐ ์ํด์ swap๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ก๊ณ ๋ฉฐ์น ์ง์ผ๋ณด์๋ค. ์ค์๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ก์๋๋ค๋ณด๋ ๋๋ฆฌ๊ธด ํ์ง๋ง ๋์ด์ ๋ป์ง ์์๋ค.
์ ๋ฆฌํ์๋ฉด t2.small์ 1G์ RAM์ view ๊น์ง ๊ฐ๊ณ ์๋ ์๋ฒ๋ฅผ ๊ฒฌ๋์ง ๋ชป ํ๋ ๊ฒ์ด์๋ค.
์ด๋ฏธ์ง ๋ฆฌ์์ค ๋ก๋ฉ ์๋ ๊ฐ์
๋ก์ง์ ์ผ๋ก ์ฑ๋ฅ์ ๊ฐ์ ํ ์ ์๋ ๋ถ๋ถ์ ์ต๋ํ ์ฐพ์๋ดค๋ค. JPA ์ฟผ๋ฆฌ ๊ฐ์ ๋ถ๋ถ์ ๋ก์ง์ ํ๋ํ๋ ๋ฐ๋ผ๊ฐ๋ฉฐ ์์์น ๋ชปํ ์ฟผ๋ฆฌ๊ฐ ๋ฐ์ํ์ง ์๋๋ก ๊ผผ๊ผผํ ์ดํ๊ธฐ์ ๋ฌธ์ ์์๋ค. ํ์ง๋ง ์๊ฐ์ง๋ ๋ชป ํ๋ ๋ถ๋ถ์์ ์ฑ๋ฅ๊ฐ์ ์ ํ ์ ์์๋ค.
์ง๋ฌธ ์์ธ ํ์ด์ง๋ฅผ ๋ก๋ฉํ ๋ ๋ฆฌ์์ค ์์ฒญ์ ์ดํด๋ณด์๋๋ฐ, ๋ค๋ฅธ ์์ฒญ๋ค์ ๋นํด static์ ์ ์ฅํด๋๋ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ค๋๋ฐ ๋ง์ ์๊ฐ์ด ๋ค์๋ค. ์ ์ ์ด๋ฏธ์ง์ ๋ํด์๋ s3 bucket์ ๋ฃ์ด ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ค๋ ์๋๊ฐ ๋์ ๋ฐ๊ฒ ๊ฐ์ ๋๋ค.
์ถ๊ฐ๋ก cloud front ๋ ๊ธฐ์ ์ ๋ํด ์๊ฒ๋์๋ค. CloudFront๋ AWS์์ ์ ๊ณตํ๋ CDN ์๋น์ค๋ค. ์บ์ฑ์ ํตํด ์ฌ์ฉ์์๊ฒ ์ข ๋ ๋น ๋ฅธ ์ ์ก ์๋๋ฅผ ์ ๊ณตํจ์ ๋ชฉ์ ์ผ๋ก ํ๋ค. CloudFront๋ ์ ์ธ๊ณ ์ด๊ณณ์ ๊ณณ์ Edge Server(Location)์ ๋๊ณ Client์ ๊ฐ์ฅ ๊ฐ๊น์ด Edge Server๋ฅผ ์ฐพ์ Latency๋ฅผ ์ต์ํ์์ผ ๋น ๋ฅธ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํ๋ค. ์ฌ๊ธฐ์ Latency ๋ ์ฌ์ฉ์๊ฐ ๋ณธ ์ฒ๋ฆฌ ์๊ฐ์ด๋ค.
ํ์ง๋ง colony ํ๋ก์ ํธ์ ์ ์ ์ด๋ฏธ์ง๋ฅผ ๋ง์ด ์ฌ์ฉํ์ง ์์๊ธฐ์ ์ค๋ฒ์คํ์ด๋ผ ์๊ฐ๋์ด ๋ฐฐ์ ํ์๋ค.
๋ถํํ ์คํธ
๋ถํํ ์คํธ๋ ์๊ณ๊ฐ ํ๊ฒ์ ๋๋ฌํ ๋๊น์ง ์์คํ ์ ๋ถํ๋ฅผ ์ง์์ ์ผ๋ก ๊พธ์คํ ์ฆ๊ฐ์์ผ ์์คํ ์ ํ ์คํธํ๋ ๊ฒ์ด๋ค. ๋ถํ ํ ์คํธ ํด๋ก๋ Jmeter์ ์ฌ์ฉํ์๋ค.
์ฌ์ค ๋์๋ฆฌ์์ ์ปค๋ฎค๋ํฐ ์ฌ์ดํธ๋ก ์ฌ์ฉํ ๋ชฉ์ ์ด์๊ธฐ์ ์ฌ์ค ๋ถํํ ์คํธ๊น์ง ํฐ ์๋ฏธ ์๋ค ์๊ฐํ๋ค. ๊ทธ๋ฅ 2GB (t4.small)๋ก ์คํ ์ก์๋๊ณ ์ด์ํด๋ ๋๋์ง ํ ์คํธ ํ๊ธฐ ์ํ ๋ชฉ์ ์ด ์ปธ๋ค.
์ด๋น 50๊ฑด์ ์์ฒญ์ด ์์ ๋ ์๋ต๊น์ง ํ๊ท 2์ด๊ฐ๋ ์๋ชจ๋๋๊ฑธ ํ์ธํ๊ณ t4.small๋ก ๊ฒฐ์ ํ๋ค. t4.small์ ์ฌ์ฉํ๊ฒ๋๋ฉด ํ๋ฌ์ 17000์ ์ ๋์ ์๊ธ์ด ๋์๋ค.