๊ฐ๋ฐ์ํ42 SSE ์ ์ฉ (1) - SSE๋ฅผ ์ ์ฉํด๋ณด์ ๊ฐ๋ ๋ฐฐ์น ๋์ ์๋ฃ ์์ ๋ง๋ค ํ๋ฉด์ update๋ฅผ ํด์ค์ ์ฌ์ฉ์๊ฐ ์ต์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ๋ก ํ์ธํ ์ ์๋๋ก ์๋น์ค๋ฅผ ์ ๊ณตํ๊ธฐ์ํด ์ ์ ํ ๊ธฐ์ ๊ฒํ ์ค์ SSE ์ถ์ฒ์ ๋ฐ์ ๋ถ์ ํ ๊ฐ๋ฐ์ ์งํํ๊ฒ ๋์๋ค. ๊ด๋ จ ๋ด์ฉ์ ์ ๋ฆฌ SSE๋, Server Sent Event ์น ๋ธ๋ผ์ฐ์ ์ ์๋ฒ ๊ฐ ๋จ๋ฐฉํฅ ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ์น ๊ธฐ์ ์๋ฒ์์ ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )๋ก ์ค์๊ฐ ์ด๋ฒคํธ๋ฅผ ๋ณด๋ผ ์ ์๋ค. ํด๋ผ์ด์ธํธ ์ธก์์ ์๋ฒ๋ก์ ์ฐ๊ฒฐ์ ์ด์ด๋๊ณ ์๋ฒ์์ ์ด๋ฒคํธ๋ฅผ ํธ์ฌํ๋ ๋ฐฉ์ ์๋ฒ๋ ์ด๋ฒคํธ๋ฅผ ์์ฑํ๊ณ , ์ด๋ฒคํธ์ ํ์ํ Data๋ฅผ ํฌํจํ์ฌ Client์๊ฒ ์ ๋ฌํ๋ค. Client๋ ์ด๋ฒคํธ ์์ ํ ํ์ํ ์์ ์ ์ํํ๋๋ฐ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉ SSE ํน์ง - ๋จ๋ฐฉํฅ ํต์ ์๋ฒ -> ํด๋ผ์ด์ธํธ๋ก๋ง Data ์ ์ก - ๊ธฐ๋ณธ HTTP ํ๋กํ ์ฝ ์ฌ.. 2024. 4. 12. ํฌ๋ก ์ผ๋ถ ์คํ ์ด์ง ๋นํ์ฑํ ์ฒ๋ฆฌ ์ฌ๋ฌ ์คํ ์ด์ง๊ฐ ์์ ๋ ํน์ ์คํ ์ด์ง๋ ์ค์ผ์ค ์คํ ์๋๊ฒ ํ๋ ๋ฐฉ๋ฒ ๋ถํธ 2.1๋ถํฐ ์ ์ฉ @Scheduled(cron = "${spring.scheduled.cron.test.job:-}") public void testBatchExecute() { testBatch.execute(); } ScheduleConfig.java ํฌ๋ก ์ค์ ๊ฐ ์์ :- ์ถ๊ฐ ํ๋ผ๋ฏธํฐ ๊ฐ์ด ์์ ๋๋ - ์ฒ๋ฆฌ๊ฐ ๋จ cron์์ - ์ฒ๋ฆฌ๋ disable์ ์๋ฏธ ํ๋กํผํฐ ๊ฐ์ ์ฐธ์กฐํ๋, ๋ง์ฝ ํน์ ์คํ ์ด์ง์ ํด๋น ํ๋กํผํฐ๊ฐ ์ ์๋์ด ์์ง ์์ผ๋ฉด ๊ธฐ๋ณธ๊ฐ์ผ๋ก -๋ฅผ ์ฌ์ฉํ์ฌ ์ค์ผ์ค๋ง์ ๋นํ์ฑํ ์ค์ผ์ค ์ํ์ง ์๋ ์คํ ์ด์ง๋ ํ๋กํผํฐ๋ฅผ ์ค์ ํ์ง ์์์ผ๋ก์จ disable ์ฒ๋ฆฌ๊ฐ ์๋ฃ๋จ. example application-local... 2024. 4. 4. ์ค๊ณ ๊ต์ค ์ค๊ณํ ์ผ์ด ์๊ฒผ๋๋ฐ ๋ด๋ฉ๋๋ก ๋ง๊ณ ์ ๋๋ก ํ๊ณ ์ถ์ด์ ์ง๋ฌธํ๊ณ ์ ๋ฆฌํ ๊ฒ ์์ ์์ - ์ ๋ง ์ ์ฒด์ ๋ํ ์ค๊ณ๋ฅผ ์งํํด์ผํจ (ํ ๋ถ๋ถ๋ง์ด ์๋) - ์ฒจ๋ถํฐ ํด๋์ค ๋จ์, ๋ด๋ถ, ์ง๊ฐ๋๊ฑฐ ์๊ฐ X (๋์ค์ ๊ณ ๋ฏผํ ๊ฒ) - ๊ธฐ๋ฅ ๋ช ์ธ ์ ์ (์ด๋ค ๊ธฐ๋ฅ์ด ํ์ํ ์ง→ ํ๋ก์ธ์ค ํ๋ฆ๋→ ์ธํฐํ์ด์ค ์ค๊ณ, ๊ด๊ณ์ ์) ex) ํต์ ๋๋๋ฉด ํ์ ํ๋ผ๋ฏธํฐ ๋ง๋ค๊ธฐ → ํ์ ์ ๋ณด ์กฐํ → ์ค์ ๋ฐ์ดํฐ ์กฐํ → ๊ฐ๊ณต → Response ๋ชจ์ ๋ง๋ค๊ธฐ ๋จ์ํ์ง๋ง ์ด๋ฐ ํ๋ก์ฐ => ๊ฐ๋ฐ ์ ์ฑ → ๊ธฐ๋ฅ ์ ์ → ์ ์ฒด Flow → ๊ฐ Flow๋ณ ๊ธฐ๋ฅ ์์ฑ → ๋ฏธ์ฒ ๋์น ๋ถ๋ถ๋ค ์ฒ๋ฆฌ → (DB์ค๊ณ, ํด๋์ค ์ค๊ณ, ๊ฐ๋ฐ ์์) ๊ฐ ์์ ๋ณ ํ์ ์์ ๊ฐ๋ฐ ์ ์ฑ - ํต์ฌ ๊ฐ๋ฐ ์ ์ฑ ์ ํ๊ธฐ ๊ธฐ๋ฅ ์ ์ - ์ด๋ค ๊ธฐ๋ฅ์ด ํ์ํ์ง ์ ์ฒด Flo.. 2024. 4. 2. [AWS]Resource Explorer Research Resource Excplerer ๋ฆฌ์์ค ๊ฒ์ ์๋น์ค AWS ๋ฆฌ์์ค ์ ๋ณด๋ฅผ ์กฐํํด์ผํ๋๋ฐ ๊ฐ API ๊ฐ๋ณ ํธ์ถ์ด ์๋ Explorer๋ก ๋์ฒด๊ฐ ๊ฐ๋ฅํ์ง ์กฐ์ฌ ํ์ ํญ๋ชฉ์ ๋จ์ ์๋ณ ์ ๋ณด ๋ฟ๋ง ์๋๋ผ ๊ฐ ๋ฆฌ์์ค๋ณ ํน์ง๋ ํ์ํจ ์กฐํ API ListSupportedResourceType - Resource Explorer ์ง์ ๋ฆฌ์์ค ํ์ ListIndexes - ํ์ฌ AWS Resource Explorer์ ๋ํ ๋ฆฌ์์ค ์ ๋ณด๋ฅผ ์์งํ๊ณ ์๋ AWS ๋ฆฌ์ ์ ๋ชจ๋ ์ธ๋ฑ์ค ๋ชฉ๋ก - ์์ง ๋ฆฌ์ ๋ค์ ์ ๊ณตํ๋ API๋ก ๋ณด์ ListViews - ์ด ์์ ์ ํธ์ถํ๋ AWS ๋ฆฌ์ ์์ ์ฌ์ฉํ ์ ์๋ ๋ณด๊ธฐ์ Amazon ๋ฆฌ์์ค ์ด๋ฆ(ARN) - ํธ์ถ ๋ฆฌ์ ์์ ์ฌ์ฉ ๊ฐ๋ฅํ list ๋ทฐ - AWS ๊ธฐ๋ณธ ๋ทฐ๊ฐ all-resou.. 2024. 3. 14. GitHub ๋ช ์ฌ! ๋งจ๋ ํ๋ ๊น๋จธ๊ฑฐ์ github ์ธ ๋ ๋ช ์ฌํ ๊ฒ๋ค ์ ๋ฆฌ 1. ๊ฐ์ธ ํผ์จ๊ฐ ์๋๋ฉด ํ๋ก์ ํธ ์ค์ ํ์ git ์ ๋ณด๋ฅผ ๋จผ์ ๋ด๋ผ git config user.email / git config user.name 2. ๊ฐํน user.name ๋ง์ถฐ๋จ๋๋ฐ ์ push ์ด๋ ฅ์ github profile์ด ์๋ณด์ด๊ณ ์๋๊ฐ ์์ฌ์ด์ง๋๊ฐ? email์ ์์ฌํด๋ผ email์ ๋ค์ ๋ฐ๊ฟ์ฃผ๋๊ฐ ์๋ ์ด๋ฉ์ผ ์ค์ ์์ ์ถ๊ฐ ๋ฉ์ผ๋ก ๋ฑ๋ก์ ํด๋๋ผ ์ถ๊ฐ๋ฉ์ผ ๋ฑ๋กํ๋ฉด ๋ก๊ทธ์ ํ๋กํ ์ด๋ฏธ์ง๋ ์๋ณด์ฌ๋ ์๋๋ ์ฌ์ด์ง๋ค 3. github access token์ ์ ๊ฐ๊ณ ์๊ณ ๋ฐ์๋ฌ๋ผ push ํ ๋ ์ธ์ฆ์ ๋ณด ์ ๋ ฅ ์ id pw๋ฅผ ์ง์์ ์ํ๋ค ์ธ์ฆ์ ๋ณด ๋ง๊ฒ ์ ๋ ฅํ๋๋ฐ๋ pw๊ฐ ํ๋ ธ๋ค๊ณ ๋ฌ๋ค github setting ๋ค์ด๊ฐ์ develope.. 2023. 12. 14. [JS] ๋ธ๋ผ์ฐ์ ํ์์กด -> utc ๋ณํ ํ ์คํธ๋ฅผ ์ ๋ ฅ ๋ฐ์ ํ์ฌ ๋ธ๋ผ์ฐ์ ํ์์กด์ ๋ง๊ฒ ์๊ฐ์ ๋ณํํ๋ค. ๋ธ๋ผ์ฐ์ ํ์์กด์ ๋ง๋ ํ์ฌ ์๊ฐ์ UTC๋ก ๋ณํํ๋ค. // ์ ๋ ฅ๋ ๋ฌธ์์ด (์: '2023-11-01 00:00:00') const inputString = '2023-11-01 00:00:00'; // ์ ๋ ฅ๋ ๋ฌธ์์ด์ JavaScript์ Date ๊ฐ์ฒด๋ก ๋ณํ const inputDate = new Date(inputString); // ๋ธ๋ผ์ฐ์ ์ ํ์์กด์ ๋ง๊ฒ ํ์ฌ ์๊ฐ์ผ๋ก ํ์ const userTimeZoneDate = inputDate.toLocaleString('en-US', { timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone }); // ๋ธ๋ผ์ฐ์ ์ ํ์์กด์ ๋ง๋ ํ์ฌ .. 2023. 11. 30. ํ๋ก์ ํธ Tree ๊ตฌ์กฐ ์ถ๊ฐ mac์ ์ฌ์ฉ์ค์ด๋ฉฐ, README.md ํ์ผ ์์ฑ์ค์ ํ๋ก์ ํธ ํจํค์ง ๊ตฌ์กฐ๋ฅผ ์ฒจ๋ถํ๊ณ ์ถ์ด์ ๋ฐฉ๋ฒ์ ์ฐพ์ ์ ๋ฆฌ 1. brew install tree (brew๊ฐ ์ค์น๊ฐ ๋์ด์๋ค๋ ๊ฐ์ ํ์) 2. ์ํ๋ ํ๋ก์ ํธ root๋ก ๊ฐ์ tree . ๋ช ๋ น์ด ์น๋ฉด ๋ 3. ๋งํฌ๋ค์ด์ ๋ถ์ด๊ณ ์ถ๋ค๋ฉด ```์ ์ฌ์ฉํด์ ์ฝ๋๋ธ๋ญ์ ๋ถ์ฌ ๋ฃ๋๋ค. ``` . โโโ Dockerfile โโโ README.md โโโ api.iml โโโ docker-entrypoint.sh โโโ pom.xml โโโ src โ โโโ main โ โ โโโ java โ โ โ โโโ com โ โ โ โโโ test โ โ โ โโโ Application.java ...TBD ``` ๊ฒฐ๊ณผ 2023. 10. 15. github repository ํ๋๋ก ํฉ์น๊ธฐ repoํ๋์ ํ์์ ์ฌ๋ฌ ๋ฆฌํฌ์งํ ๋ฆฌ ๋๊ธฐ (๊ธฐ์กด ๊ฒ๋ค ์ฎ๊ธฐ๊ธฐ) 1. github์์ ์๋ก์ด ๋ฆฌํฌ์งํ ๋ฆฌ ์์ฑ (์ฌ๊ธฐ์ ๋ชจ์ ๊ฒ์ด๋ค) ex ) archive 2. ์๋ก ๋ง๋ ๋ฆฌํฌ Local clone terminal์ ํ๋ ์ด๊ณ , cloneํ ๊ฒฝ๋ก๋ก ์ด๋ ๋์ ๊ฒฝ์ฐ ~/workspace/miyeon ํ์์ ์ฌ๋ฌ ๋ฆฌํฌ๋ค์ ๋ชจ์๋ . archive์ญ์ ์ฌ๊ธฐ์ ์์ฑํ ์์ (๋ฐ๋ก archive๋ผ๋ ํจํค์ง ์๋ง๋ค์ด๋ ํด๋ก ํ ๋ archive ํจํค์ง ์์ฑํ๋ฉด์ ํด๋ก ๋จ) git clone {{cloneUrl}} git init 3. ์ ๋ฆฌํฌ์ commit ๋์ ๊ฒฝ์ฐ์๋ readme๋ฅผ ๋ง๋ค์ด์ ์ฌ๋ ธ์. (์ฃผ์, ๊ฐ์ธPC๋ฅผ ์ฌ์ฉํ๊ณ ์์ง ์์ git config๊ฐ global config๋ก ๋์ด์์. ์ฒดํฌ ํ ์ปค๋ฐ ์ ๋ณ.. 2023. 8. 9. ์คํ ์ง์ฐ TimeUnit.Sleep ๋๋ ์ด๋ฅผ ์ค ๋, Thread.Sleep ๋ณด๋ค๋ TimeUnit.Sleep๋ฅผ ์ฐ์. ์ฝ๋๋ฅผ ๋ณด๋ฉด ๊ฒฐ๊ตญ TimeUnit.Sleep์์ Thread.sleep๋ฅผ ์ฝํ๋ค. ๊ธฐ๊ฐ ๊ธฐ์ง๋ง TimeUnit.Sleep๋ฅผ ์ฐ๋ ์ด์ ๋ 1. ๊ฐ๋ ์ฑ์ด ๋ ์ข๋ค ๋ง์ฝ์ 3๋ถ Delay๋ฅผ ์ค๋ค Thread.Sleep(3 * 60 * 1000); == Thread.sleep(180000); //์ผํด ํ๋ฒ์ ๋ชป ์์ ๋จน์ด = TimeUnit.MINUTES.Sleep(3); 2. 1์ ์ฐ์ฅ์ ์ผ๋ก ์๊ฐ ๋จ์ ์ ํ์ด ๊ฐ๋ฅํ๋ค. TimeUnit: DAYS, HOURS, MICROSECONDS, MILLISECONDS, MINUTES, NANOSECONDS.SECONDS 3. ์์ ์ฑ ์๊ฐ ์ด๊ณผ๊ฐ ์์์ธ์ง ํ์ธํ ํ ํธ์ถํจ. (ํ์ ์์์ด.. 2023. 5. 31. ์ด์ 1 2 3 4 5 ๋ค์