728x90

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ 128

WEB3 ๊ฐœ๋… (Web 1.0 VS Web 2.0 VS Web 3.0 ์ฐจ์ด)

Web 1.0 (์ •์  ์ธํ„ฐ๋„ท) ์›น์‚ฌ์ดํŠธ์˜ ์‹œ๋Œ€, ์›น์‚ฌ์ดํŠธ ์ฃผ์ธ์ด ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ์ •์  ๋ฐ์ดํ„ฐ์™€ ์ •๋ณด ๋‹ด์Œ ์›น์‚ฌ์ดํŠธ = ๊ธฐ์—…์ด ๋งŒ๋“ค๊ณ  ์†Œ์œ ํ•˜๋Š” ๊ฐœ์ฒด / ์ •์  ๋ฐ์ดํ„ฐ ๋ฐ ์ •๋ณด -> ํšŒ์‚ฌ์—์„œ ํ†ต์ œํ•˜๊ณ  ๊ด€๋ฆฌ ๋ชจ๋“  ์‚ฌ์ดํŠธ๋Š” '๋‹จ๋ฐฉํ–ฅ ํ†ต์‹  ๊ฒฝ๋กœ'๋กœ ์†Œ๋น„์ž์—๊ฒŒ ์ •๋ณด ์ „๋‹ฌ ex) ์‹ ๋ฌธ, ์žก์ง€, ๋ผ๋””์˜ค, ํ…”๋ ˆ๋น„์ „๊ณผ ๊ฐ™์€ ์ „ํ†ต์  ๋ฏธ๋””์–ด๊ฐ€ ๋Œ€์ค‘์—๊ฒŒ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ์‹๊ณผ ์œ ์‚ฌ ๋ฐ์ดํ„ฐ ๊ฐœ์ธํ™”๋Š” ๊ทนํžˆ ์ œํ•œ์  -> ์‚ฌ์šฉ์ž๊ฐ€ ์ „๋‹ฌ๋œ ์ •๋ณด์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆœ ์—†์Œ (์†Œ๋น„ํ•˜๊ณ ์ž ํ•˜๋Š” ์ •๋ณด๋ฅผ ์„ ํƒํ•˜๊ณ  ํ•„ํ„ฐ๋งํ•  ์ˆœ ์žˆ์Œ) Web 2.0 (์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜) ์ง€๊ธˆ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ์ธํ„ฐ๋„ท ๊ธฐ์—…์€ ๊ฐœ๋ณ„ ์‚ฌ์šฉ์ž๊ฐ€ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ํฌ๋Ÿผ์„ ์ œ๊ณตํ•˜๋Š” ๋ฐ ์ดˆ์  ๊ฐœ์ธ ๋ธ”๋กœ๊ทธ ํŠธ๋ Œ๋“œ -> ์†Œ์…œ ๋ฏธ๋””์–ด ๋ฐ์ดํ„ฐ ๋ฏผ์ฃผํ™”, ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด..

WEB3 2023.09.24

AWS Lambda๋กœ Slack๊ณผ ์—ฐ๋™ํ•ด์„œ ์•Œ๋žŒ ์„ค์ • (RDS PostgreSQL, ๋žŒ๋‹ค ์Šฌ๋ž™ ์—ฐ๋™, SNS ๊ตฌ๋… ์„ค์ •)

RDS PostgreSQL Slack ์•Œ๋žŒ ํ…Œ์ŠคํŠธ (slack incoming-webhook ์•ฑ ์ด์šฉ) Slack์— ์•Œ๋ฆผ ์ˆ˜์‹ ์„ ์œ„ํ•œ ์•ฑ ์ถ”๊ฐ€ (incoming-webhook) ๊ตฌ์„ฑ ์„ ํƒํ•ด์„œ ๊ตฌ๋…์„ ์›ํ•˜๋Š” ์Šฌ๋ž™ ์ฑ„๋„์„ ์„ ํƒ ์„ ํƒ ํ›„ ์›นํ›„ํฌ URL ๋ณต์‚ฌํ•ด๋‘” ๋’ค (๋žŒ๋‹ค ์ƒ์„ฑ ์‹œ ํ•„์š”) ์„ค์ • ์ €์žฅ Slack ์ˆ˜์‹ ์„ ์œ„ํ•œ AWS Lambda ํ•จ์ˆ˜ ์ƒ์„ฑ ์—ญํ•  ์„ ํƒ ํ›„ SNS ํŠธ๋ฆฌ๊ฑฐ๋Š” ์•„์ง ์ฃผ์ œ ์ƒ์„ฑ ์ „์ด๊ธฐ์— ์ œ๊ฑฐํ•œ๋‹ค. ๋žŒ๋‹ค ์ƒ์„ฑ ์‹œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ • kmsEncryptedHookUrl๊ณผ slackChannel ๊ฐ’์„ ์ž…๋ ฅํ•ด์ค€๋‹ค Url ์ •๋ณด์™€ slackChannel์€ ์œ„์— ์Šฌ๋ž™์—์„œ ์•ฑ ์„ค์ •ํ•  ์‹œ ์ •๋ณด๋“ค์„ ์ž…๋ ฅํ•ด์ค€๋‹ค ์ƒ์„ฑ ์™„๋ฃŒ Amazon SNS ์ฃผ์ œ ์ƒ์„ฑ ํ‘œ์ค€ ์„ ํƒ, ์ด๋ฆ„ ์ž…๋ ฅ ํ›„ ์ƒ์„ฑ ์ƒ์„ฑ๋œ ์ฃผ์ œ๋กœ ๋“ค์–ด๊ฐ€์„œ ๊ตฌ๋… ์ƒ..

Architecture/AWS 2023.09.24

Docker ์ปจํ…Œ์ด๋„ˆ ๊ธฐ์ˆ ์˜ ๋ฐœ์ „๊ณผ์ •, ๋„์ปค ๊ตฌ์„ฑ์š”์†Œ, ๊ธฐ๋ณธ ํ™˜๊ฒฝ ๊ตฌ์„ฑ ๋ฐ ๋„์ปค ์„ค์น˜ ๋ฐฉ๋ฒ•, ์„ค์น˜ ํ™•์ธ

์ปจํ…Œ์ด๋„ˆ ๊ธฐ์ˆ ์˜ ๋ฐœ์ „ ๊ณผ์ • Traditional Deployment ํ•˜๋“œ์›จ์–ด ์œ„์— OS ์„ค์น˜ ํ›„ App ์‹คํ–‰์— ํ•„์š”ํ•œ Library๋ฅผ OS์— ์„ค์น˜ ๋‹ค์–‘ํ•œ ์„œ๋น„์Šค๋ฅผ ํ•œ ์„œ๋ฒ„์—์„œ ์šด์˜ํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒ (๋น„์šฉ ํšจ์œจ์„ฑ) ์„œ๋น„์Šค๊ฐ„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•จ์— ๊นŒ๋ผ ์„œ๋น„์Šค๊ฐ„ ํ™˜๊ฒฝ ๊ฒฉ๋ฆฌ๊ฐ€ ์š”๊ตฌ๋จ Virtualized Deployment Hypervisor: VM(Virtual Machine)์„ ๊ด€๋ฆฌํ•˜๋Š” ์—ญํ• ์„ ํ•จ Guest OS(VM)์— ํ•˜๋“œ์›จ์–ด ์ž์›์„ ์—๋ฎฌ๋ ˆ์ดํŒ…์„ ํ•˜๋‹ค๋ณด๋‹ˆ ์„ฑ๋Šฅ ํ•˜๋ฝ์ด ๋ฐœ์ƒํ•˜๋ฉฐ, ๊ฐ€์ƒ๋จธ์‹ ์„ ๋„์šฐ๊ธฐ ์œ„ํ•œ ์ž์›์˜ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋ฐœ์ƒ Container Deployment Docker : ๋Œ€ํ‘œ์ ์ธ Container Engine chroot, namespace ๋“ฑ์„ ์ด์šฉํ•œ ๊ฒฉ๋ฆฌ๊ธฐ์ˆ  ์ œ๊ณต Host Proces..

์ข€ ๋Šฆ์€... 47ํšŒ 221105 SQLD ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ๋ฐœ์ž ํ•ฉ๊ฒฉ ํ›„๊ธฐ

ํฌํฌ ์ž‘๋…„์— ๋”ฐ๋†“๊ณ  ์ง€๊ธˆ ํ›„๊ธฐ ์“ฐ๊ธฐ https://blog.naver.com/ahnty0122/223188189564 ์ข€ ๋Šฆ์€... 47ํšŒ 221105 SQLD ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ๋ฐœ์ž ํ•ฉ๊ฒฉ ํ›„๊ธฐ ๋‚ด์นœ๊น€์— ์”๋‹ˆ๋‹ค. SQLD ํ•ฉ๊ฒฉ ํ›„๊ธฐ 22.11.05์— ์‹œํ—˜๋ดค๋Š”๋ฐ ์ด์ œ ํ›„๊ธฐ๋ฅผ ์“ฐ๋‹ค๋‹ˆ ์ž‘๋…„์— ํšŒ์‚ฌ์—์„œ ์ž๊ฒฉ์ฆ ... blog.naver.com

230819 AWS Certified Solution Architect Associate (AWS SAA-C03) ์ž๊ฒฉ์ฆ ์ทจ๋“ ํ›„๊ธฐ[์ถœ์ฒ˜] 230819 AWS Certified Solution Architect Associate (AWS SAA-C03) ์ž๊ฒฉ์ฆ ์ทจ๋“ ํ›„๊ธฐ

ํฌํฌ ํด๋ผ์šฐ๋“œ ์ž๊ฒฉ์ฆ ํ•˜๋‚˜ GET https://blog.naver.com/ahnty0122/223188099145 230819 AWS Certified Solution Architect Associate (AWS SAA-C03) ์ž๊ฒฉ์ฆ ์ทจ๋“ ํ›„๊ธฐ ํšŒ์‚ฌ์—์„œ AWS Solution Architect Associate ์ž๊ฒฉ์ฆ ๋ฐ”์šฐ์ฒ˜๋ฅผ ๋ฐ›์•„์„œ ์‹œํ—˜์„ ๋ดค์Šต๋‹ˆ๋‹ค.. ์‚ฌ์‹ค ์ž‘๋…„ 1... blog.naver.com

SQL Server Architecture

DBMS ์•„ํ‚คํ…์ฒ˜ - DBMS๋Š” ์ ์–ด๋„ ํ•˜๋‚˜ ์ด์ƒ์˜ ์ธ์Šคํ„ด์Šค์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํฌํ•จ - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์œ ์ €(์‘์šฉ)๋ฐ์ดํ„ฐ์™€ ์‹œ์Šคํ…œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฌผ๋ฆฌ ํŒŒ์ผ๋“ค๋กœ ๊ตฌ์„ฑ - ์ธ์Šคํ„ด์Šค๋Š” DBMS ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค(memory, process)๋กœ ๊ตฌ์„ฑ ** process: ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰ ๋‹จ์œ„, process ๋‚ด์— ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์ˆ˜ํ–‰ํ•  ๋•Œ ์ž‘์—…์˜ ๋‹จ์œ„ ๋˜๋Š” ๊ฐœ์ฒด thread ์˜ค๋ผํด ์•„ํ‚คํ…์ฒ˜ ์˜ค๋ผํด ์„œ๋ฒ„ = Instance(๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ + background ํ”„๋กœ์„ธ์Šค ์˜์—ญ) + Database(์ €์žฅ ํŒŒ์ผ ์˜์—ญ) ํด๋ผ์ด์–ธํŠธ ํ”„๋กœ์„ธ์Šค -> ์„œ๋ฒ„ ํ”„๋กœ์„ธ์Šค: client๊ฐ€ ์š”์ฒญํ•œ SQL ์ฟผ๋ฆฌ๋ฅผ server process๊ฐ€ ์‹คํ–‰ ๊ฒฐ๊ณผ ์ „๋‹ฌ, application์„ ํ†ตํ•ด ์š”์ฒญ๋œ SQL..

DB(Database)/MSSQL 2022.06.13

๋ฐฑ์ค€ ์ด๋ถ„ํƒ์ƒ‰ ๋ฌธ์ œ๋“ค (1072 ๊ฒŒ์ž„, 1654 ๋žœ์„ ์ž๋ฅด๊ธฐ, 1920 ์ˆ˜์ฐพ๊ธฐ, 2512 ์˜ˆ์‚ฐ)

https://www.acmicpc.net/problem/1072 1072๋ฒˆ: ๊ฒŒ์ž„ ๊น€ํ˜•ํƒ์€ ์ง€๊ธˆ ๋ชฐ๋ž˜ Spider Solitaire(์ŠคํŒŒ์ด๋” ์นด๋“œ๋†€์ด)๋ฅผ ํ•˜๊ณ  ์žˆ๋‹ค. ํ˜•ํƒ์ด๋Š” ์ด ๊ฒŒ์ž„์„ ์ด๊ธธ ๋•Œ๋„ ์žˆ์—ˆ์ง€๋งŒ, ์งˆ ๋•Œ๋„ ์žˆ์—ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€์˜ ์‹œ์„ ์ด ๋Š๊ปด์ง„ ํ˜•ํƒ์ด๋Š” ๊ฒŒ์ž„์„ ์ค‘๋‹จํ•˜๊ณ  ์ฝ”๋”ฉ์„ ํ•˜๊ธฐ ์‹œ www.acmicpc.net import sys input = sys.stdin.readline x, y = map(int, input().split()) z = int(100 * y / x) if z >= 99: print(-1) else: ans = 0 start = 0 end = 1000000000 while(start

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž…๊ตญ์‹ฌ์‚ฌ (์ด๋ถ„ํƒ์ƒ‰)

https://programmers.co.kr/learn/courses/30/lessons/43238 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ž…๊ตญ์‹ฌ์‚ฌ n๋ช…์ด ์ž…๊ตญ์‹ฌ์‚ฌ๋ฅผ ์œ„ํ•ด ์ค„์„ ์„œ์„œ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์ž…๊ตญ์‹ฌ์‚ฌ๋Œ€์— ์žˆ๋Š” ์‹ฌ์‚ฌ๊ด€๋งˆ๋‹ค ์‹ฌ์‚ฌํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์ฒ˜์Œ์— ๋ชจ๋“  ์‹ฌ์‚ฌ๋Œ€๋Š” ๋น„์–ด์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ ์‹ฌ์‚ฌ๋Œ€์—์„œ๋Š” ๋™์‹œ์— ํ•œ programmers.co.kr def solution(n, times): answer = 0 left = 1 right = max(times) * n # ๊ฐ€์žฅ ๋น„ํšจ์œจ์ ์ธ ์‹ฌ์‚ฌ ์‹œ๊ฐ„ while left = n: break if count >= n: right = mid - 1 elif count < n: left = mid + 1 return left print(solution(6, [7, 10..

728x90