728x90

[boj/python] 1238๋ฒˆ ํŒŒํ‹ฐ

import sys import heapq input = sys.stdin.readline INF= (int)(1e8) N,M,X=map(int,input().split()) lst=[[] for _ in range(N+1)] for i in range(M): start,end,cost = map(int,input().split()) lst[start].append((end,cost)) # ์ง‘ -> x๊นŒ์ง€ ๋‹ค์ต์ŠคํŠธ๋ผ x-> ์ง‘๊นŒ์ง€ ๋‹ค์ต์ŠคํŠธ๋ผ 2ํšŒ ์ˆ˜ํ–‰ def dijkstra(start,): q = [] distance = [INF]*(N+1) distance[start] = 0 heapq.heappush(q,(start,0)) while q: node,dist=heapq.heappop(q) if dist..

[DevOps] Cloud Run์—์„œ RDS์— ์—ฐ๊ฒฐํ•˜๋ ค๋ฉด

CloudRun ์›น์„œ๋ฒ„์— ํ™˜๊ฒฝ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•ด์ค˜์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ ์„ค์ •ํ•ด์ฃผ๋ƒ๋ฉด ์šฐ์„  cloud run ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ค๊ณ  ์ปจํ…Œ์ด๋„ˆ -> ํ™˜๊ฒฝ๋ณ€์ˆ˜์—์„œ ์„ค์ •ํ•ด์ฃผ๋ฉด ๋œ๋‹ค. ํ™˜๊ฒฝ๋ณ€์ˆ˜๋Š” ์š”๋ ‡๊ฒŒ ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๊ฐ€๋ฆฌ๊ธฐ ! ๊ทธ๋Ÿฌ๋ฉด ํ™˜๊ฒฝ๋ณ€์ˆ˜ ENDPOINT,SCHEMA,USER,PW๋งŒ Cloud Run์— ๋„ฃ์–ด์ฃผ๋ฉด ๋œ๋‹ค.

๐Ÿ“Œ Issue! 2023.02.12 0

Elastic beanstalk์—์„œ Environment health has transitioned from Ok to Severe. 100 % of the requests are erroring with HTTP 4xx ์—๋Ÿฌ๊ฐ€ ๋œฐ ๋•Œ

๋กœ๊ทธ๋ฅผ ํ™•์ธํ•ด๋ณด๋‹ˆ ๋กœ๋“œ๋ฒจ๋Ÿฐ์‹ฑ ์ƒํƒœํ™•์ธ์ด ๊ณ„์† 404๊ฐ€ ๋–ด๋‹ค. ๊ณต์‹๋ฌธ์„œ๋ฅผ ๋ณด๋‹ˆ๊นŒ ์ƒํƒœ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•˜์ง€ ์•Š์•„์„œ ์ธ๊ฒƒ ๊ฐ™์•˜๋‹ค. Target.ResponseCodeMismatch ์„ค๋ช…: ์ƒํƒœ ํ™•์ธ์ด ์˜ˆ์ƒ HTTP ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•: ์„ฑ๊ณต ์ฝ”๋“œ๋Š” ๋Œ€์ƒ์œผ๋กœ๋ถ€ํ„ฐ ์„ฑ๊ณต์ ์ธ ์‘๋‹ต์„ ํ™•์ธํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” HTTP ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค. 200~499 ์‚ฌ์ด์˜ ๊ฐ’ ๋˜๋Š” ๊ฐ’ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ 200์ž…๋‹ˆ๋‹ค. ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์ƒํƒœ ํ™•์ธ ๊ตฌ์„ฑ์„ ํ™•์ธํ•˜์—ฌ ์ˆ˜์‹ ํ•  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋˜๋Š” ์„ฑ๊ณต ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ, ์›น ์„œ๋ฒ„ ์•ก์„ธ์Šค ๋กœ๊ทธ๋ฅผ ๊ฒ€์‚ฌํ•˜์—ฌ ์˜ˆ์ƒ ์„ฑ๊ณต ์ฝ”๋“œ๊ฐ€ ๋ฐ˜ํ™˜๋˜๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ํ•„์š”์— ๋”ฐ๋ผ ์„ฑ๊ณต ์ฝ”๋“œ ๊ฐ’์„ ์ˆ˜์ •ํ•˜์‹ญ์‹œ์˜ค. ping ๊ฒฝ๋กœ๊ฐ€ ์œ ํšจํ•œ์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ping ๊ฒฝ๋กœ๋Š” ์ƒํƒœ ํ™•์ธ์„ ์œ„ํ•œ ๋Œ€์ƒ์—..

๐Ÿ“Œ Issue! 2023.02.09 0

[GCP] Cloud Run์œผ๋กœ ์Šคํ”„๋ง๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ์›น์„œ๋ฒ„์— ๋ฐฐํฌํ•ด๋ณด์ž!

Google Cloud๋ฅผ ํ†ตํ•ด์„œ๋งŒ ๋ฐฐํฌํ•  ์ผ์ด ์ƒ๊ฒจ์„œ ์—ฌ๋Ÿฌ๋ฒˆ ๋ป˜์ง“์„ ํ•˜๋‹ค ๊ธฐ๋กํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ์•„๋ฌด๋ž˜๋„ GCP๋Š” AWS๋ณด๋‹ค ๋ ˆํผ๋Ÿฐ์Šค๊ฐ€ ๋งŽ์ด ์—†๊ธฐ๋„ ํ•ด์„œ ๋” ์–ด๋ ค์› ๋‹ค. ํ•˜์ง€๋งŒ ๊ตฌ๊ธ€์ด์—ฌ์„œ ๊ทธ๋Ÿฐ์ง€ ๊ณต์‹๋ฌธ์„œ๊ฐ€ ์ •๋ง ์ž˜ ๋˜์–ด์žˆ์—ˆ๋‹ค. ์ฝ๊ธฐ ๋”ฐ๋ถ„ํ• ์ง€ ๋ชฐ๋ผ๋„ ๊ผญ ์ฝ์–ด๋ณด๋ฉด ์ข‹๋‹ค! ๊ฒฐ๊ตญ ๋‚˜๋„ ๋‹ต์„ ๊ณต์‹๋ฌธ์„œ์— ์ฐพ์•˜๋‹ค! ๋„์›€์„ ๋ฐ›์€ ๋งํฌ๋Š” https://cloud.google.com/build/docs/deploying-builds/deploy-cloud-run?hl=ko Cloud Build๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Cloud Run์— ๋ฐฐํฌ | Cloud Build ๋ฌธ์„œ | Google Cloud ์˜๊ฒฌ ๋ณด๋‚ด๊ธฐ Cloud Build๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Cloud Run์— ๋ฐฐํฌ ์ปฌ๋ ‰์…˜์„ ์‚ฌ์šฉํ•ด ์ •๋ฆฌํ•˜๊ธฐ ๋‚ด ํ™˜๊ฒฝ์„ค์ •์„ ๊ธฐ์ค€์œผ๋กœ ์ฝ˜ํ…์ธ ๋ฅผ ์ €์žฅํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜์„ธ์š”..

DevOps 2023.02.06 0

[Springboot] Docker+Elastic Beanstalk +Github action ๋‹ฌ๊ณ  CI/CDํ•ด๋ณด์ž!

์Šคํ”„๋ง๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ์— ๋„์ปค๋ฅผ ๊ฐ์‹ธ๊ณ  Github Action์œผ๋กœ CI CD๋ฅผ ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‚ด๊ฐ€ ์ฐพ์•„๋ณธ ๋ฐ”๋กœ ์ด 3๊ฐ€์ง€์ด๋‹ค! ์•„ ์šฐ์„  ์™œ ๋„์ปค๋ฅผ ๊ฐ์‹ธ๋ƒ ํ•˜๋ฉด ๋‚˜์ค‘์— ์„œ๋น„์Šค๊ฐ€ ์ปค์กŒ์„ ๋•Œ ๋ชจ๋“  ํ™˜๊ฒฝ์— ๋™์ผํ•œ ๋ฒ„์ „์œผ๋กœ ๋ฐฐํฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ๊ณ  ๋‹ค๋“ค ๋„์ปค๋„์ปค ํ•˜๋‹ˆ๊นŒ ๋‚˜๋„ ๋„์ปค ์ข€ ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ๋‹ค! ๐Ÿณ ๊ทธ๋ž˜์„œ ๋ณธ๋ก ์œผ๋กœ ๋“ค์–ด๊ฐ€์„œ CI CDํ•˜๋Š” ๋ฐฉ๋ฒ• ์„ธ๊ฐ€์ง€๋ฅผ ์†Œ๊ฐœํ•˜๊ฒ ๋‹ค. 1๏ธโƒฃ Docker+ S3+CodeDeploy+Github actions ๊ฐ„๋‹จํ•ด ๋งํ•˜๋ฉด ๋นŒ๋“œ ํŒŒ์ผ์ธ jarํŒŒ์ผ์„ ์••์ถ•ํ•ด์„œ ์—…๋กœ๋“œ ํ•œ ๋‹ค์Œ์— CodeDeploy๋ฅผ ํ™œ์šฉํ•ด ๋ฐฐํฌํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์ธ์ง€ ์ด ๋ฐฉ๋ฒ•์„ ์“ฐ๋ฉด IAM์ด ๋ฌด๋ ค ์„ธ๊ฐœ๋‚˜ ํ•„์š”ํ•˜๋‹ค. IAM ์—ญํ•  2๊ฐœ my-ec2-ima-role : EC2์ธ์Šคํ„ด์Šค์—์„œ S3์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ถŒํ•œ์„ ์ค€๋‹ค (AmazonS3..

DevOps 2023.01.14 0