- ๋์์ฑ์ด ํ์ํ ์ด์ ?
- ๋์์ฑ์ ๋ฌด์๊ณผ ์ธ์ ๋ฅผ ๋ถ๋ฆฌํ๋ ์ ๋ต์ด๋ค. ๋ค์ค ์ค๋ ๋ ํ๋ก๊ทธ๋จ์ ์์คํ ์ ์ฑ๋ฅ, ์๋ต ์๊ฐ ๋ฑ์ ๋์ผ ์ ์๋ค.
- ๋์์ฑ์ ๋ํ ๋ฏธ์
- ๋์์ฑ์ ํญ์ ์ฑ๋ฅ์ ๋์ฌ์ค๋ค.
- ๋์์ฑ์ ๊ตฌํํด๋ ์ค๊ณ๋ ๋ณํ์ง ์๋๋ค.
- ์น ๋๋ EJB ์ปจํ ์ด๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋์์ฑ์ ์ดํดํ ํ์๊ฐ ์๋ค.
- ๋์์ฑ์ ๋ํ ํ๋นํ ์๊ฐ
- ๋์์ฑ์ ๋ค์ ๋ถํ๋ฅผ ์ ๋ฐํ๋ค.
- ๋์์ฑ์ ๋ณต์กํ๋ค.
- ์ผ๋ฐ์ ์ผ๋ก ๋์์ฑ ๋ฒ๊ทธ๋ ์ฌํํ๊ธฐ ์ด๋ ต๋ค.
- ๋์์ฑ์ ๊ตฌํํ๋ ค๋ฉด ํํ ๊ทผ๋ณธ์ ์ธ ์ค๊ณ์ ๋ต์ ์ฌ๊ณ ํด์ผ ํ๋ค.
- ๋์์ฑ ๋ฐฉ์ด ์์น
- ๋จ์ผ ์ฑ ์ ์์น => ๋์์ฑ ์ฝ๋๋ ๊ทธ ํ๋๋ง์ผ๋ก๋ ์ถฉ๋ถํ ์ด๋ ต๋ค. ๋ค๋ฅธ ์ฝ๋์ ๋ถ๋ฆฌํ๋ผ.
- ๋ฐ๋ฆ ์ ๋ฆฌ => ์๋ฃ๋ฅผ ์บก์ํํ๋ผ. ๊ณต์ ์๋ฃ๋ฅผ ์ต๋ํ ์ค์ฌ๋ผ.
- ๋ฐ๋ฆ ์ ๋ฆฌ => ์๋ฃ ์ฌ๋ณธ์ ์ฌ์ฉํ๋ผ(?)
- ๋ฐ๋ฆ ์ ๋ฆฌ => ๋ ์์ ์ธ ์ค๋ ๋๋ก, ๊ฐ๋ฅํ๋ฉด ๋ค๋ฅธ ํ๋ก์ธ์์์, ๋๋ ค๋ ๊ด์ฐฎ๋๋ก ์๋ฃ๋ฅผ ๋ ๋ฆฝ์ ์ธ ๋จ์๋ก ๋ถํ ํ๋ผ.
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ดํดํ๋ผ => ์ธ์ด๊ฐ ์ ๊ณตํ๋ ํด๋์ค๋ฅผ ๊ฒํ ํ๋ผ. ์๋ฐ์์๋ java.util.concurrent, java.util.concurrent.atomic, java.util.concurrent.locks๋ฅผ ์ตํ๋ผ.
- ์คํ ๋ชจ๋ธ์ ์ดํดํ๋ผ
- ์์ฐ์-์๋น์ => ์์ฐ์, ์๋น์๊ฐ ์๋ก์๊ฒ ์๊ทธ๋์ ์ ๋ณด๋ผ ์ ์๋๋ก ์ ๊ฒฝ์ด๋ค.
- ์ฝ๊ธฐ-์ฐ๊ธฐ => ์ฝ๊ธฐ์ ์ฐ๊ธฐ, ์ฒ๋ฆฌ์จ๊ณผ ๊ธฐ์ ์ฌ์ด์ ์ ์ ํ ๊ท ํ์ก๊ธฐ๊ฐ ํ์ํ๋ค.
- ๋๊ธฐํํ๋ ๋ฉ์๋ ์ฌ์ด์ ์กด์ฌํ๋ ์์กด์ฑ์ ์ดํดํ๋ผ
- ๊ณต์ ๊ฐ์ฒด ํ๋์๋ ๋ฉ์๋ ํ๋๋ง ์ฌ์ฉํ๋ผ.
- ๋๊ธฐํ ํ๋ ๋ถ๋ถ์ ์๊ฒ ๋ง๋ค์ด๋ผ
- synchronized ๋ฌธ์ ๋จ๋ฐํ๋ ์ฝ๋๋ ๋ฐ๋์ง ํ์ง ์์ง๋ง ์๊ณ์์ญ์ ๋ฐ๋์ ๋ณดํธํ์.
- ์ฌ๋ฐ๋ฅธ ์ข ๋ฃ ์ฝ๋๋ ๊ตฌํํ๊ธฐ ์ด๋ ต๋ค.
- ์ข ๋ฃ ์ฝ๋๋ฅผ ๊ฐ๋ฐ ์ด๊ธฐ๋ถํฐ ๊ณ ๋ฏผํ๊ณ ๋์ํ๊ฒ ์ด๊ธฐ๋ถํฐ ๊ตฌํํ๋ผ. ์๊ฐ๋ณด๋ค ์ค๋ ๊ฑธ๋ฆฐ๋ค. ์๊ฐ๋ณด๋ค ์ด๋ ค์ฐ๋ฏ๋ก ์ด๋ฏธ ๋์จ ์๊ณ ๋ฆฌ์ฆ์ ๊ฒํ ํ๋ผ.
- ์ค๋ ๋ ์ฝ๋ ํ ์คํธํ๊ธฐ
- ๋ฌธ์ ๋ฅผ ๋ ธ์ถํ๋ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์์ฑํ๋ผ. ํ๋ก๊ทธ๋จ ์ค์ ๊ณผ ์์คํ ์ค์ ๊ณผ ๋ถํ๋ฅผ ๋ฐ๊ฟ๊ฐ๋ฉฐ ์์ฃผ ๋๋ ค๋ผ. ํ ์คํธ๊ฐ ์คํจํ๋ฉด ์์ธ์ ์ถ์ ํ๋ผ. ๋ค์ ๋๋ ธ๋๋ ํต๊ณผํ๋๋ผ๋ ์ด์ ๋ก ๊ทธ๋ฅ ๋์ด๊ฐ๋ฉด ์ ๋๋ก ์๋๋ค.
- ์์คํ ์คํจ๋ฅผ โ์ผํ์ฑโ์ด๋ผ ์น๋ถํ์ง ๋ง๋ผ.
- ์ค๋ ๋ ํ๊ฒฝ ๋ฐ์์ ์๊ธฐ๋ ๋ฒ๊ทธ์ ์ค๋ ๋ ํ๊ฒฝ์์ ์๊ธฐ๋ ๋ฒ๊ทธ๋ฅผ ๋์์ ๋๋ฒ๊น ํ์ง ๋ง๋ผ. ๋จผ์ ์ค๋ ๋ ํ๊ฒฝ ๋ฐ์์ ์ฝ๋๋ฅผ ์ฌ๋ฐ๋ก ๋๋ ค๋ผ.
- ๋ค์ํ ์ค์ ์์ ์คํํ ๋ชฉ์ ์ผ๋ก ๋ค๋ฅธ ํ๊ฒฝ์ ์ฝ๊ฒ ๋ผ์ ๋ฃ์ ์ ์๊ฒ ์ฝ๋๋ฅผ ๊ตฌํํ๋ผ.
- ์ฒ์๋ถํฐ ๊ทธ๋ฆฌ๊ณ ์์ฃผ ๋ชจ๋ ๋ชฉํ ํ๋ซํผ์์ ์ฝ๋๋ฅผ ๋๋ ค๋ผ.
- ๋ณด์กฐ ์ฝ๋๋ฅผ ์ถ๊ฐํ๋ โ์ง์ ๊ตฌํํ๊ธฐโ , โ์๋ํโ ๋ฐฉ๋ฒ์ ์ฌ์ฉํด ์ฝ๋๋ฅผ ํ๋ค์ด ์ค๋ฅ๋ฅผ ์ฐพ์๋ด๋ผ.
- ๊ฒฐ๋ก
- ๋ค์ค ์ค๋ ๋ ์ฝ๋๋ ๊ฐ๋ณํ ๊นจ๋ํ๊ฒ ์ฝ๋๋ฅผ ์ง์ผ ํ๋ค.