๊นํ๋ธ๋ฅผ ๋์๋ค๋๋ค๊ฐ ์์ ์ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ธํฐ๋ทฐ ์ง๋ฌธ์ด๋ผ๋ ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ๋ณธ์ ์ด ์๋ค. ์ฌ์ค ๊ทธ ๋น์์๋ ๊ทธ๋ฅ ์คํ๋ง ๋๋ฌ๋๊ณ ํฐ ๊ด์ฌ์ด ์์์ง๋ง ์ง๊ธ๋ถํฐ ํ๋์ฉ ํ์ด๋ณด๋ ค ํ๋ค.
๋ฌผ๋ก ๋ง์ ๋ต๋ค์ด ์ด๋ฏธ ์ด ๋ ํฌ์งํ ๋ฆฌ์ ์์ฑ๋์ด ์๊ธด ํ๋ฐ, ์์ฑ๋์ง ์์ ๊ฒ๋ค๋ ์๊ณ ๋ด ๋ต์ด๋ ๋ชจ๋ฒ๋ต์์ ๋น๊ตํ๋ ๊ฒ๋ ์ข์ ๊ฒ ๊ฐ์์ ํ๋ฒ ํ์ด๋ณด๋ ค ํ๋ค.
๊ธฐ์กด ๋ ํฌ์งํ ๋ฆฌ์๋ ๋ฌธ์ ์ ๋ถ๋ฅ๊ฐ ์๋์ ๊ฐ์ด ๋์ด์๋ค.
๋งค์ผ 1๊ฐ์ง์ฉ ๋์๊ฐ๋ฉฐ ํ ๊ฑด๋ฐ, General Questions ํญ๋ชฉ์์ ๋๋ฌด ์ผ๋ฐ์ ์ธ ๋ฌธ์ ๋ ํ์ง ์์ ๊ฒ์ด๋ค. ๋๋ฌด ์ผ๋ฐ์ ์ธ ๋ฌธ์ ์ ์ ์๋ ์ฌ๋๋ง๋ค ๋ต์ด ๋ค๋ฅผ ์ ์๋ ๋ฌธ์ ์ด๋ค.
์ด๋ฅผํ ๋ฉด...
What did you learn yesterday/this week? (์ด์ /์ด๋ฒ์ฃผ์ ๋ฌด์์ ๋ฐฐ์ ๋์)
What excites or interests you about coding? (๋ฌด์์ด ๋น์ ์ ์ฝ๋ฉํ๊ณ ์ถ๊ฒ ๋ง๋๋์?)
What is a recent technical challenge you experienced and how did you solve it?(์ต๊ทผ์ ๊ฒช์ ๊ธฐ์ ์ ์ธ ์ด๋ ค์๊ณผ ๊ทธ๊ฒ์ ์ด๋ป๊ฒ ํด๊ฒฐํ๋์ง ์๋ ค์ฃผ์ธ์)
์ด๋ฌํ ๊ฒ๋ค์ ๋ต๋ณํ์ง ์๋๋ค. ์ด๋ฐ ๋ฌธ์ ๋ ๊ทธ๋๊ทธ๋ ๋ต์ด ๋ฌ๋ผ์ง ์ ์๋ค.
๋์ ๋ต๋ณ์ ๋์ ํ๋ฅ ๋ก ํ๋ฆด ์๋ ์์ผ๋ฉฐ, ์๋๋ฉด ๋ง๊ฒ ๊ฐ๋ค๊ฐ ์ค๊ฐ์ ์ด์ํ ๊ธธ๋ก ๋น ์ง ์๋ ์๋ค. ๋๊ธ์ ์์ ๋ง์ ๋ต์ ์ฌ๋ ค์ฃผ๋ฉด ๋งค์ฐ ๊ณ ๋ง์ธ ๊ฒ ๊ฐ๋ค.
์๋ฌธ : When building a new web site or maintaining one, can you explain some techniques you have used to increase performance?
'ํผํฌ๋จผ์ค' ์ ์๋ฏธ๋ฅผ '์ฑ๋ฅ' ๊ณผ '์ต์ ํ' ์ ๊ด์ ์์ ๋ณผ ๋,
CDN์ Contents Delivery Network๋ก ์ฌ์ฉ์์ ๊ฐ๊น์ด ๊ณณ์ ์์นํ Cache Server์ Content๋ฅผ ์ ์ฅ(์บ์ฑ)ํด๋์๋ค๊ฐ ์์ฒญ ์์ Cache Server๊ฐ ์๋ต์ ์ฃผ๋ ๋ฐฉ์์ ๋งํ๋ค. ์ด ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ๋ฌผ๋ฆฌ์ ์ธ ๊ฑฐ๋ฆฌ์ ์ ์ฝ์์ด ๋์ ๊ฐ์ฅ ๊ฐ๊น์ด Cache Server์์ ๋ฆฌ์์ค๋ฅผ ๋ฐ์ ์ ์๊ธฐ ๋๋ฌธ์ ๋น ๋ฅธ ๋ฆฌ์์ค ๋ค์ด๋ก๋๊ฐ ๊ฐ๋ฅํ๋ค.
๋ฆฌ์์ค์ ์ต์ํ๋ ๋ก๋๋๋ ์ด๋ฏธ์ง๋ค์ ์ฌ์ด์ฆ, ํ์ง์ ๋ํ ์กฐ์ ๊ณผ ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ ๋ฑ ์์ค์ฝ๋์ ์ต์ํ๊ฐ ์์ ์ ์๊ฒ ๋ค.
์๋ฐ์คํฌ๋ฆฝํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ก๋ํ ๋, ๋ง์ฝ ์์กด์ฑ์ด ์๊ตฌ๋๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค์ ํจ๊ป ๋ก๋ํ๋ค๋ฉด ๋์ค์ ๋ก๋๋์ด์ผ ํ ๊ฒ๋ค์ 'defer' ํค์๋๋ฅผ ์ด์ฉํ์ฌ ์ง์ฐ๋ก๋ฉ์ ํ๋ฉด ๋ ํ ๊ณ , ๊ทธ๋ ์ง ์์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ 'async' ํค์๋๋ฅผ ํตํด ๋น๋๊ธฐ์ ๋ก๋ฉ์ ๊ตฌํํ ์ ์๋ค.
๋น๋๊ธฐ์ ๋ก๋๋ ์ฑ๋ฅ์ ์ด์ ์ ์ค๋ค.
Lazy Loading์ ์ด์ฉํ์ฌ ํ๋ฒ์ ๋ชจ๋ ์ปจํ ์ธ ๋ฅผ ๋ก๋ํ์ง ์๊ณ , ์ฌ์ฉ์์ ํ๋ฉด์ ์ฆ๊ฐ์ ์ผ๋ก ๋ณด์ด๋ ๋ฆฌ์์ค๋ค์ ๋ก๋ฉํ๊ณ , ๋๋จธ์ง๋ ํ์ํ ๋์ ๋ก๋ํ ์ ์๋ค.
๊ฑฐ์ ๋๋ถ๋ถ์ ๋์ ์น์ฌ์ดํธ์ ๊ฒฝ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฐ๊ฒ ๋๋ค. ์ฌ๊ธฐ์ ๊ด๊ณํ DB/๋น๊ด๊ณํ DB๋ฅผ ์ ํํด์ผ ํ๋ค.
์ต๋ํ ๊ฐ๋ตํ๊ฒ ๋งํ์๋ฉด ์ฑ๋ฅ์ ์ํด์๋ ์ฌ๋งํ๋ฉด ๊ด๊ณํ DB๋ฅผ ์ ํํ๋ ๊ฒ์ด ์ณ๋ค๊ณ ๋ณธ๋ค. ์ฌ๊ธฐ์ ๊ด๊ณํ DB๋ฅผ ์ ํํ ๊ฒฝ์ฐ, DB์ค๊ณ๊ฐ ๋งค์ฐ ์ค์ํ ์ ์๋ค๊ณ ์๊ฐํ๋ค.
ํ์ง๋ง ์ฌ์ฉ๋ ๋ฐ์ดํฐ์ ๋ณ๊ฒฝ์ฌํญ์ด ์์ฃผ ๋ฑ์ฅํ๋ฉฐ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ๊ทธ๋ ๊ฒ ๋ณต์กํ์ง ์๋ค๋ฉด ๋น๊ด๊ณํ DB๋ฅผ ์ ํํ๋ ๊ฒ๋ ์ข๋ค๊ณ ์๊ฐํ๋ค. (Schemaless์ ์ด์ ์ด์ฉ) ๋น ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ๊ฒฝ์ฐ์๋ ๋น๊ด๊ณํ DB๊ฐ ์ข์ ์ ์๋ค. ๋ค์ค ์๋ฒ๋ฅผ ๊ตฌ์ฑํด๋๊ณ ํด๋ฌ์คํฐ๋ง์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ด์ฉ์๊ฐ ๋ง์ ์๋ฒ์ ๊ฒฝ์ฐ nginx๋ pm2๋ฅผ ์ด์ฉํ์ฌ ๋ก๋๋ฐธ๋ฐ์ฑ์ ๊ตฌ์ถํ๊ณ , ์๋ฒ์ ๋ถํ๊ฐ ์ ๋๋ ์ง๊ฒ ํ ์ ์๋ค.
๊ตฌ๊ธ ํฌ๋กฌ์ ๋คํธ์ํฌ ํญ์ ์ด์ฉํ์ฌ, ํ์ด์ง๋ฅผ ๋ก๋ํ ๋์ ์ด๋ ํ ์์ฒญ๋ค์ด ์ฃผ๊ณ ๋ฐ์์ง๋์ง ํ์ธํ๊ณ ์ธ๋ชจ์๋ ์์ฒญ์ ์ฐพ์์ ์ง์ฐ๊ณ , ๋๋ฌด ๋ก๋ฉ์ด ์ค๋๊ฑธ๋ฆฌ๋ ์์ฒญ์ ๊ทธ ์์ธ์ ํ์ ํด๋ณด์์ผ ํ๋ค.
Time to first byte๋ผ๊ณ ๋ถ๋ฆฌ๋ ์ 3๊ฐ์ง์ factor๋ฅผ ์ดํด๋ณด๋ ๊ฒ์ด ๋์์ด ๋ ์ ์๋ค.
ํฌ๋กฌ ๋คํธ์ํฌ ๊ฒฐ๊ณผ์์ waterfall์ ํด๋ฆญํด์ ํ์ธํด๋ณผ ์๋ ์๊ณ , ๋ค๋ฅธ ์ฌ์ดํธ ์คํผ๋ ์ธก์ ์น์ฌ์ดํธ๋ฅผ ์ด์ฉํ์ฌ ๋ณผ ์๋ ์๋ค.
https://www.crazyegg.com/blog/speed-up-your-website/
https://m.blog.naver.com/sef16/70185648139
https://m.blog.naver.com/PostView.nhn?blogId=sef16&logNo=70180201343&proxyReferer=https:%2F%2Fwww.google.com%2F
์ข์ ๋ด์ฉ ๊ฐ์ฌํฉ๋๋ค! ์ ๋ธ๋ก๊ทธ์ ์์ฝํด์ ๊ธ์ ์ฌ๋ฆฌ๋ ค ํ๋๋ฐ, ๊ด์ฐฎ์๊น์?