๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
1์ฅ. ์ฝํ๋ฆฐ์ด๋ ๋ฌด์์ด๋ฉฐ, ์ ํ์ํ ๊ฒ์ธ๊ฐ?
๋์ ํ๋ซํผ ์๋ฒ ์๋๋ก์ด๋ ์ฝํ๋ฆฐ์ ์ ์ ํ์ ์ธ์ด์ด๋ค. ๊ทธ๋์ ์ปดํ์ผ๋ฌ๊ฐ ๋ณ์์ ํ์ ์ ํ์ ์ถ๋ก ๊ฐ๋ฅํ๊ธฐ์ ํ์ ์ ์ธ์ ์๋ตํด๋ ๋๋ค. ๋์ด ๋ ์ ์๋ ํ์ ์ ์ ๊ณตํ๋ค. null ์ด ๋ ์ ์๋ ํ์ ์ ํ์ ๋ค์ ? ๋ฅผ ๋ถํ ์ฃผ๋ฉด ๋๋ค. -> null ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ ์ฝ๋๋ ์ ์ด์ ์ปดํ์ผ์กฐ์ฐจ ๋์ง ์๋๋ก ๋จ...nullPointerException ์ด ์ผ์ด๋๋ ๋น๋๋ฅผ ํ ์ค์ฌ์ค! ์ฝํ๋ฆฐ์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ๋ ์ ๊ฐ๋๋ค. 1. ์ผ๊ธ์๋ฏผ์ธ ํจ์ - ํจ์๋ฅผ ์ผ๋ฐ ๊ฐ์ฒ๋ผ ๋ค๋ฃฐ ์ ์๋ค. 2. ๋ถ๋ณ์ฑ - ๊ฐ์ฒด ์ํ ๋ณ๊ฒฝ x 3. ๋ถ์ํจ๊ณผ ์์ - ์ ๋ ฅ์ด ๊ฐ์ผ๋ฉด ํญ์ ๊ฐ์ ์ถ๋ ฅ ์ฌ๊ธฐ์ ์ป์์ ์๋ ์ด์ ์ 1. ๊ฐ๊ฒฐ์ฑ 2. ์์ ์ฑ - ๋ค์ค์ค๋ ๋์์๋ ์์ ํ๋ค. ๋ถ๋ณ๋ฐ์ดํฐ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ 3. ์์ ํจ์๋ ์ค๋น..
Kotlin in Action
์ด์ ๋ถํฐ ์ฝํ๋ฆฐ ๊ณต๋ถ ์์์ ~~~ ์ฝํ๋ฆฐ์ด ๋ฏธ๋๋ค
ํ์ด์ง ํ๊ณ ์ถ์๋ฐ skip ์ ์จ๋ ๊ด์ฐฎ์๊น?
ํํ pagenation ์ ํ ๋ skip ์ ํด์ ์๋ถ๋ถ์ ๋ฌด์ํ๋ค์ limit ์ผ๋ก ์ํ๋ paging ํฌ๊ธฐ๋งํผ์ ์๋ฅธ๋ค๊ณ ์ฒ์์ ์๊ฐํ ๊ฒ์ด๋ค. ํ์ง๋ง!! ์ด๊ฒ์ด ์ฑ๋ฅ์ ์์ข๊ฒ ํ๋ค๊ณ ๋ค์๋ค. ๋ฐ์ดํฐ ์ ์ ๋ชจ๋ build up ํ ํ์ skip ์ ํ๊ธฐ์ ๊ต์ฅํ ์ฑ๋ฅ์ด ์์ข๋ค๊ณ ํ๋ค.... ๊ทธ๋ผ ์ด๋ป๊ฒ ํ์ด์ง์ ๊ณ ์ํ ๊ฒ์ธ๊ฐ?? ๋์ ๊ฐ๋ตํ ํด๊ฒฐ๋ฒ์ ํด๋ผ์ด์ธํธ์์ ๋ง์ง๋ง id ๋ฅผ ๋ณด๋ด์ฃผ๋ ๊ฒ์ด๋ค... ๋ชฝ๊ณ db ์์ Objectid ๋ ์ ์ผํจ์ด ๋ณด์ฅ๋๋ 12 byte binary data ์ด๊ณ ์์ 4 byte ๋ ์๊ฐ์ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๊ธฐ์ ํญ์ ์ฆ๊ฐํ๋ค. ๋์ ๊ฒฝ์ฐ์๋ ์ต์ ์ ๋ฐ์ดํฐ๋ฅผ ์ํ๊ธฐ์ ํด๋ผ์ด์ธํธ์์ ๋ณด๋ด์ค id ๋ณด๋ค ํฐ๊ฒ๋ค ์ค์์ ๋ ์ง์ญ์์ผ๋ก ์ ๋ ฌํํ์ limit์ ์จ์ ํด๊ฒฐํ์๋ค.. ๊ณ ..
์ธ๋ถ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ ธ์ถ์ํค์
์ฟ ๋ฒ๋คํฐ์ค ์์ ์ฌ๋ฌ๊ฐ์ง ๋ฐฉ์์ผ๋ก ์ธ๋ถ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ ธ์ถ ๊ฐ๋ฅํ๋ค. ๊ทธ์ค์์ external ip ๋ฅผ ์ด์ฉํด์ ์ธ๋ถ๋ก ๋ ธ์ถํ๋ ๋ฐฉ๋ฒ๊ณผ ์ด๊ฒ์ ์ฅ ๋จ์ ์ ํ์ตํ์ฌ ๋ณด์. What is Service? pod ๋ค์ด ์ ์ฑ๋๊ฒ ๋๋ฉด ๊ฐ๊ฐ์ ip ๊ฐ ๋๋คํ๊ฒ ์์ฑ๋๋ค. ์ด๋ ํ๋๋ณ๋ก ๊ฐ๊ฐ ๊ฐ์ง๋ฉฐ ํ๋๊ฐ restart ํ ๋๋ง๋ค ์๋กญ๊ฒ ํ ๋น ๋ฐ๋๋ค. ๊ทธ๋ฆฌํ์ฌ ์ด๋ค์ ip ๋ฅผ ๋ฌถ์ด์ฃผ๊ณ ์ด๊ฒ๋ค์๊ฒ ๋ก๋๋ฐธ๋ฐ์ฑ์ ์ ๊ณตํด์ฃผ๋ '๋๊ตฐ๊ฐ'๊ฐ ํ์ํ๊ฒ ๋ฌ๋ค. ๊ทธ ์ญํ ์ ์๋น์ค๊ฐ ์ํ ๊ฐ๋ฅํ๋ค. service ๋ ์ง์ ๋ ip ๋ก ์์ฑ์ด ๊ฐ๋ฅํ๊ณ ๊ณ ์ ํ DNS ๋ฅผ ๊ฐ์ง ์ ์๋ค. Service Type 1) cluster ip - ๋ํดํธ๋ก ์ค์ ์ผ๋ก ๋ฐ๋ก service type ์ ์ค์ ์ํด์ฃผ๋ฉด cluster ip ํ์ ์ผ๋ก ์ค์ ๋๋ค...
๋ชฝ๊ณ DB ๊ฐ๋
What is Mongo - ๋ฌธ์์งํฅ ์ ์ฅ์๋ฅผ ์ ๊ณตํ๋ no sql databse - Document ํ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ (Document๋ rdbms ์ record ์ ์ ์ฌ, Json ๊ณผ ๊ฐ์ key-value ์์ผ๋ก ๋์ด ์์) - Document ๋ค์ ์งํฉ์ Collection (collection ์ rdbms ์ table ๊ณผ ์ ์ฌ) what is Advantage or Disadvantage https://elky84.github.io/2018/09/26/mongodb/ Mongodb ์ฅ๋จ์ , ํ์ฉ์ ๊ณ ๋ฏผํ ์ฌํญ๋ค · Elky Essay elky84.github.io
Let's Start Mongo
์ฒ์์ผ๋ก ์์ํ๋ ๋ชฝ๊ณ ! brew ์ค์น https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/ mongodb ์๋ฒ ์คํ - brew services start mongodb-community mongo ์น๋ฉด shell ์ ์ ์ฅ๋จ mongodb refer https://docs.mongodb.com/manual/introduction/
Nginx ์์ (IP to Domain) redirection
IP ๋ฅผ url ๋ก ์ ๋ ฅ ํ์์๋ ๋ฐ๋ก domain ์ผ๋ก redirect ํ๊ณ ์ถ๋ค๋ฉด ์๋ฒ ์ค์ ์์ ์๋ฒ ์์ดํผ๋ฅผ listen ํ๊ณ ์๋ ๋ถ๋ถ์์ ip๊ฐ ๋ค์ด์ค๋ฉด ์ด๋ฅผ ๋๋ฉ์ธ์ผ๋ก ๋ฐ๊ฟ ์ฃผ๋๊ฐ ์๋๋ฉด ๋๋ฉ์ธ์ ๋ฐํํด ์ฃผ๋ฉด ๋๋ค๊ณ ํ๋ค. ์๋์ ๊ฐ์ด ์ฃผ์์ ํ๊ณ return ๋ถ๋ถ์ ํ์ค ์ถ๊ฐํ๋ค. :wq ํํ์ sudo service nginx reload sudo service nginx restart ๋ช ๋ น์ด 'curl -I http://์๊ธฐ ์์ดํผ' ๋ฅผ ์คํํ๋ฉด ํ ์คํธ ๊ฐ๋ฅํ๋ค. [์ฐธ๊ณ : memorynotfound.com/nginx-redirect-ip-address-domain-name/]
๋๋ฉ์ธ์ https ์ ์ฉ - letsEcrypt
https ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ฉด http์ ๋ณด์ ์ทจ์ฝ์ ํด๊ฒฐ ๊ฐ๋ฅํ๋ค. https ํ๋กํ ์ฝ์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ SSL ์ด๋ผ๋ ์ธ์ฆ์๋ฅผ ๋ฐ์์ผํ๋ค. ์ด๋ฅผ ๋ฌด๋ฃ๋ก ๋ฐ๊ธํด ์ฃผ๋ ์ฌ์ดํธ๊ฐ letsEncrypt ์ด๋ค. ๊ฐ์ Let’s Encrypt๋? Let’s Encrypt๋ SSL ์ธ์ฆ์๋ฅผ ๋ฌด๋ฃ๋ก ๋ฐ๊ธํด์ฃผ๋ CA(Certificate Authorities)์ ๋๋ค. ์ฌ๋ฌ ๊ธ๋ก๋ฒ ๊ธฐ์ ์ ํ์์ ๋ฐ๊ณ ์์ผ๋ฉฐ ๋ชจ์ง๋ผ(Mozilla) ์ฌ๋จ์์ ‘์ ๋ขฐํ ์ ์๋ ์ธ์ฆ ๊ธฐ๊ด(Trusted CA)’ ์ผ๋ก ์ธ์ฆ๋ ๋ฐ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ฒ ๋ฆฌ์ฌ์ธ(VeriSign)์ด๋ ์ฝ๋ชจ๋(Comodo)์ ๊ฐ์ ์ ๋ช ์ธ์ฆ ์ ์ฒด์ ๊ฐ์ ์ ๋ขฐ๋๋ฅผ ๊ฐ์ง๋ฉฐ SSL ์ํธํ ๊ธฐ์ ๋ฐฉ์๊ณผ ๋์๋ ์ ํํ ๋์ผํฉ๋๋ค. ๋จ์ง ๋ค๋ฅธ ๊ฒ์ ์ฌ์ดํธ์ ์ธ์ฆ์ ๋ฌธ์ ๊ฐ ์์ด ..