ZSet์ ์ ๋ ฌ๋ ์์๋ก ์ ์ฅ๋๋ ๊ณ ์ ํ ๋ฐ์ดํฐ ์งํฉ๊ฐ ์์๋ ์ ์(Score) ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ ์ ๋ ฌ1. Redis Sorted Set(ZSet) ์ด๋?Key-Value ์ ์ฅ ๊ตฌ์กฐ์ง๋ง, ๊ฐ Value์ Score(์ซ์)๊ฐ ์ถ๊ฐ๋๋ค.์ ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์๋ ์ ๋ ฌ๋จ์ค๋ณต๋ ๊ฐ์ ์ ์ฅ๋์ง ์์ผ๋ฉฐ(Unique), Score๋ ์ค๋ณต ๊ฐ๋ฅ๋น ๋ฅธ ์กฐํ ์๋(O(log N))๋ก ๋ญํน, ์ ๋ ฌ๋ ๋ฐ์ดํฐ ๊ด๋ฆฌ, TTL ๊ธฐ๋ฐ ์บ์ฑ ๋ฑ์ ์ ์ฉํ๋ค.์ฃผ์ ๋ช
๋ น์ด1. ๋ฐ์ดํฐ ์ถ๊ฐ(ZADD)ZADD key score1 member1 [score2 member2 ... ]2. ๋ฐ์ดํฐ ์กฐํ(ZRANGE, ZREVRANGE)์ค๋ฆ์ฐจ์ ์กฐํ(ZRANGE)๋ด๋ฆผ์ฐจ์ ์กฐํ(ZREVRANGE)3. ํน์ ๊ฐ์ ์์ ์กฐํ์ค๋ฆ์ฐจ์ ์์ ์กฐํ(ZRANK)๋ด๋ฆผ์ฐจ์..
๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ

์ธ๊ธฐ๊ธ ์๊ตฌ์ฌํญ์ผ ๋จ์๋ก ์์ 10๊ฑด ์ธ๊ธฐ๊ธ ์ ์ ๋งค์ผ ์ค์ 1์ ์
๋ฐ์ดํธ์ข์์ ์/๋๊ธ ์/์กฐํ์ ๊ธฐ๋ฐ ์ ์ ๊ณ์ฐ์ ์ = (์ข์์ ์ * 3) + (๋๊ธ ์ * 2) + (์กฐํ์ * 1)์ต๊ทผ 7์ผ ์ธ๊ธฐ๊ธ ๋ด์ญ ์กฐํ์ค๊ณ๋งค์ผ ๊ฒ์๊ธ ์์ฑ ํธ๋ํฝ์ ์๋ฐฑ~์์ฒ๋ง ๊ฑด ์ด์ํ๋ฃจ๋์ ์์ฑ๋ ๋ชจ๋ ๊ฒ์๊ธ์ ๋ํด์,์ ์๋ฅผ ๊ณ์ฐํ๊ณ , ์์ 10๊ฑด์ ์ฐพ์์ผํ๋ ์์
์ด๋ฌํ ์์
์ 1์๊ฐ ๋ง์ ์ฒ๋ฆฌ๋์ด์ผ ํ๋ค.๋๊ท๋ชจ ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด ํ์ํ๋ค.๋ฐฐ์น ์ฒ๋ฆฌ๋ฅผ ๊ณ ๋ คํด๋ณผ ์ ์๋ค.์ค์ 12์๊ฐ ๋์๋ง์, ์ ๋ ์์ฑ๋ ๊ฒ์๊ธ์ ๋ชจ๋ ์ํ๊ฐ ๊ฒ์๊ธ์ ๋ํด์ ์ข์์ ์, ์กฐํ์, ๋๊ธ ์๋ฅผ ์กฐํ๊ฒ์๊ธ์ ์ ์๋ฅผ ๊ณ์ฐ๋ชจ๋ ๊ฒ์๊ธ์ ๋ํด์ ์์ 10๊ฑด์ ์ ์ ๋ฐฐ์น ์์
์ ํตํด ๋ฌธ์ ์์ด ์ฒ๋ฆฌํ ์ ์์ง๋ง, ์ ํ์ฌํญ์ด ..
Apache Kafka๋ ๋ถ์ฐ ์คํธ๋ฆฌ๋ฐ ํ๋ซํผ์ผ๋ก, ๋๊ท๋ชจ ์ค์๊ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํ ๋ฉ์์ง ๋ธ๋ก์ปค ์ญํ ์ ํ๋ค.Kafka๋ ๋์ ํ์ฅ์ฑ, ๋ด๊ฒฐํจ์ฑ(fault tolerance), ๋์ ์ฒ๋ฆฌ๋์ ์ ๊ณตํ๋ฉฐ, ๊ธฐ์
์ ๋ก๊ทธ ์ฒ๋ฆฌ, ์ด๋ฒคํธ ์คํธ๋ฆฌ๋ฐ, ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ ๊ตฌ์ถ ๋ฑ์ ๋๋ฆฌ ์ฌ์ฉ๋๋ค.1. Kafka๋?๋์ฉ๋ ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ณ ์์ ์ ์ผ๋ก ์ก์์ ํ๊ธฐ ์ํ ๋ถ์ฐ ๋ฉ์์ง ์์คํ
Pub/Sub(๋ฐํ-๊ตฌ๋
) ๋ชจ๋ธ ๊ธฐ๋ฐ์ ๋ฉ์์ง ๋ธ๋ก์ปค์ด๋ฒคํธ ๊ธฐ๋ฐ ์์คํ
๊ตฌ์ถ ๊ฐ๋ฅ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ ์ฒ๋ฆฌ ๋ฐ ๋น๋๊ธฐ ๋ฉ์์ง ํ๋ก ํ์ฉ2. Kafka ์ํคํ
์ฒ1. Producer(์์ฐ์)Kafka์ ๋ฉ์์ง๋ฅผ ์ ์กํ๋ ์ญํ ๋ฉ์์ง๋ฅผ Topic์๊ฒ ๊ฒ์(Publish) ํจacks ์ค์ ์ผ๋ก ๋ฉ์์ง ์ ์ก ๋ณด์ฅ ์์ค ์กฐ์ ๊ฐ๋ฅ (acks=0, 1, all..

๊ฒ์๊ธ ํ
์ด๋ธ ์ค๊ณcolumn_nameTypeDescriptionarticle_idBIGINTPrimary KeytitleVARCHAR(100)์ ๋ชฉcontentVARCHAR(3000)๋ด์ฉboard_idBIGINT๊ฒ์ํID(Shard Key)writer_idBIGINT์์ฑ์IDcreated_atDATETIME์์ฑ์๊ฐmodified_atDATETIME์์ ์๊ฐ์ฌ๊ธฐ์ Shard Key๋ ๊ฒ์ํ ID์? ๊ฒ์๊ธ ์๋น์ค๋ ๊ฒ์ํ ๋จ์๋ก ์๋น์ค๋ฅผ ์ด์ฉํ๊ธฐ์, ๊ฒ์ํ ๋จ์๋ก ๊ฒ์๊ธ ๋ชฉ๋ก์ด ์กฐํ๋๋ ๊ฒprimary key ์์ฑ ์๊ณ ๋ฆฌ์ฆ์ Snowflake ์ฌ์ฉ๋ถ์ฐ ์์คํ
์์ ๊ณ ์ ํ 64bit ID๋ฅผ ์์ฑํ๋ ์๊ณ ๋ฆฌ์ฆ๋ถ์ฐ ํ๊ฒฝ์์๋ ์ค๋ณต ์์ด ์์ฐจ์ ID๋ฅผ ์์ฑํ๊ธฐ ์ํ ๊ท์น[1bit][41bits:ํ์์คํฌํ][10bit..

ํ๋ก์ ํธ ์์ฑ ์ ๋ถํฐ ์์๋ ๋ฉ์ฒญํ ์ง1jdk๋ฅผ 21๋ก ์ค์ ํ๊ณ ํ๋ก์ ํธ ์ธํ
์ ์งํํ๋๋ฐ, gradle build๋ ๋ฌธ์ ์์ด ๋๋๋ฐ ์?์๊พธ ์ด๋ฐ์ ์๋ฌ๊ฐ ๋จ๋์ง ์ดํด๊ฐ ์๋....build.gradle ์์๋ 21ํ๋ก์ ํธ ์ธํ
์์๋ 21๋ฌด์ํ ์ค์ ์ ์ฉ์ ๋ฐ๋ณตํ๋ค ๋ฐ๊ฒฌํ ๋ฉ์ฒญํ ์งintellij ์ธํ
์์ฒด์์ 17๋ก ๋์ด์์....์ด๊ฑธ 21๋ก ๋ณ๊ฒฝํด์ฃผ๋ ์ ์ ๋์..... ๋ช๋ถ์ ์ธ๋ฐ์์ด ๋ ๋ ธ๋คใ
Oracle์ PIVOT ํจ์๋ ํ ๋ฐ์ดํฐ๋ฅผ ์ด ๋ฐ์ดํฐ๋ก ๋ณํํ๋๋ฐ ์ฌ์ฉ๋๋ค. ํนํ, ์์ฝ ๋ฐ์ดํฐ๋ฅผ ํํํ๊ณ ๋, ๋ฐ์ดํฐ ๋ถ์ ๋ฐ ๋ณด๊ณ ์๋ฅผ ์์ฑํ ๋ ์ ์ฉํ๋ค. Pivot์ ํ
์ด๋ธ์ ๋ฐ์ดํฐ๋ฅผ ํ๋ ฌ ํํ๋ก ๋ณํํ์ฌ ๋ณด๊ธฐ ์ฝ๊ฒ ๋ง๋ค์ด์ค๋ค.Pivot ํจ์์ ์ฃผ์ ๊ตฌ์กฐSELECT , FROM ( SELECT FROM )PIVOT ( () FOR IN (, , ... , ));๊ณ ์ ๋ ์ด : ๋ณํ๋์ง ์๊ณ ์ถ๋ ฅ์ ๊ทธ๋๋ก ์ ์ง๋ ์ด์ ์ง์ ํ๋ค.๋ฐ์ดํฐ ์๋ณธ : ํผ๋ฒ ์์
์ ์ํํ ํ
์ด๋ธ ๋ฐ ๋ฐ์ดํฐ๋ฅผ ์ง์ ํ๋ค.์ง๊ณ ํจ์ : SUM, AVG, COUNT ๋ฑ ์ง๊ณ ์์
์ ์ํํ ํจ์๋ฅผ ์ง์ ํ๋ค.ํผ๋ฒ ์ด : ํ ๋ฐ์ดํฐ๊ฐ ์ด ๋ฐ์ดํฐ๋ก ๋ณํ๋ ๊ธฐ์ค ์ด์ ..
L3 (Layer 3)OSI ๋ชจ๋ธ์ 3๊ณ์ธต์ธ ๋คํธ์ํฌ ๊ณ์ธต์ ์๋ฏธํ๋ค. L3 ์ฅ๋น๋ ๋ผ์ฐํ
๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๋ฐ์ดํฐ ํจํท์ ๋คํธ์ํฌ ๊ฐ์ ์ ๋ฌํ๋ ์ญํ ์ ํ๋ค.์ฃผ์ ๊ธฐ๋ฅ๋ผ์ฐํ
: L3๋ IP ์ฃผ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ ํ ๊ฒฝ๋ก๋ก ์ ๋ฌํ๋ค.์๋ธ๋ทํ
: ๋คํธ์ํฌ๋ฅผ ์ฌ๋ฌ ์๋ธ๋ท์ผ๋ก ๋๋๊ณ , ๊ฐ ์๋ธ๋ท ๊ฐ์ ํธ๋ํฝ์ ๊ด๋ฆฌํ๋ค.ํจํท ํํฐ๋ง : ACL(Access Control List)์ ์ฌ์ฉํ์ฌ ํน์ ํธ๋ํฝ์ ํ์ฉํ๊ฑฐ๋ ์ฐจ๋จํ ์ ์๋ค.VLAN ๊ฐ ๋ผ์ฐํ
: VLAN(Virtual Local Area Network) ๊ฐ์ ํต์ ์ ์ง์ํ๋ค.๋ฐฑ๋ณธ (Backbone)๋ฐฑ๋ณธ ๋คํธ์ํฌ๋ ์ฌ๋ฌ ๋คํธ์ํฌ ์ธ๊ทธ๋จผํธ๋ฅผ ์ฐ๊ฒฐํ์ฌ ๊ณ ์ ๋ฐ์ดํฐ ์ ์ก์ ์ง์ํ๋ ์ค์ ๋คํธ์ํฌ์ด๋ค.๋ฐฑ๋ณธ ๋คํธ์ํฌ๋ ๋์ ๋์ญํญ๊ณผ ๋น ๋ฅธ ์๋๋ก ๋คํธ์ํฌ ์ค์ฌ..
XSS(Cross-Site Scripting)XSS๋ ์น ๋ณด์ ์ทจ์ฝ์ ์ค ํ๋๋ก, ๊ณต๊ฒฉ์๊ฐ ์
์ฑ ์คํฌ๋ฆฝํธ๋ฅผ ๋ค๋ฅธ ์ฌ์ฉ์์ ๋ธ๋ผ์ฐ์ ์์ ์คํํ๊ฒ ๋ง๋๋ ๊ณต๊ฒฉ ๊ธฐ๋ฒ์ด๋ค.์ฃผ๋ก ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์
๋ ฅ ๊ฒ์ฆ ๋ฏธ๋น๋ก ์ธํด ๋ฐ์ํ๋ฉฐ, ๊ณต๊ฒฉ์๋ ์ด๋ฅผ ํตํด ์ฌ์ฉ์์ ์ฟ ํค, ์ธ์
ํ ํฐ ๋๋ ๊ธฐํ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ํ์ทจํ๊ฑฐ๋, ์ฌ์ฉ์๋ฅผ ํผ์ฑ ์ฌ์ดํธ๋ก ๋ฆฌ๋๋ ์
ํ๊ฑฐ๋, ์ํ์ง ์๋ ํ๋์ ์ํํ๊ฒ ํ ์ ์๋ค.์ ํ1. ๋ฐ์ฌํ XSS(Reflected XSS)์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋ฐ์ดํฐ๊ฐ ์๋ฒ์ ์ ์ฅ๋์ง ์๊ณ ์ฆ์ ๋ฐ์ฌ๋์ด ์ฌ์ฉ์์๊ฒ ๋ฐํ๋ ๋ ๋ฐ์ํ๋ค. ์ผ๋ฐ์ ์ผ๋ก URL ๋งค๊ฐ๋ณ์๋ ์์ ์
๋ ฅ ๊ฐ์ด HTML ํ์ด์ง์ ํฌํจ๋ ๋ ๋ฐ์ํ๋ค. ์ฌ์ฉ์๊ฐ "q" ๋งค๊ฐ๋ณ์์ ์
์ฑ ์คํฌ๋ฆฝํธ๋ฅผ ์
๋ ฅํ๋ฉด, ์๋ฒ๋ ์ด ์
๋ ฅ๊ฐ์ ๊ฒ์ฆ ์..