반응형

분류 전체보기 119

리눅스 메모리 스왑 설정하기(aws 프리티어 메모리 스왑으로 젠킨스 사용하기)

리눅스 메모리 스왑 필요성aws 프리티어를 사용하면 메모리가 1GB 밖에 안됩니다. 16GB, 32GB 등등 되는 요즘 컴퓨터 스펙을 생각하면 굉장히 작은 스펙입니다. 하지만 이 스펙에도 MVP만 갖춰진 애플리케이션은 어느정도 돌릴 수 있습니다. 하지만 젠킨스 서버로 활용하게 되는 경우 메모리 부족으로 인해 서버가 다운될 수 있습니다. 메모리 스왑을 통해 aws 프리티어 서버를 젠킨스 서버로 활용서버 스펙을 높이자니 비용이 들어가기 때문에 aws 프리티어를 사용하면서 젠킨스를 활용한 CI/CD를 구성하려는 분들에게는 괜찮은 선택지이지 않을까 싶습니다. 아무래도 하드디스크를 메모리처럼 사용하다보니 느린 부분은 있긴하겠지만 문제가 생기기 전까지는 무료로 쓸 수 있으니까요 리눅스 메모리 스왑 설정 방법# 2기..

ETC/기타 14:31:09

깃허브 웹 훅 젠킨스 요청보내는 법(GitHub WebHook Jenkins)

깃허브 웹 훅(GitHub Webhook)이란?깃허브 웹 훅(GitHub Webhook)은 깃허브 저장소에서 발생하는 특정 이벤트에 대해 자동으로 외부 URL로 HTTP POST 요청을 보내는 기능입니다. 이를 통해 깃허브 저장소와 외부 시스템 간의 통합을 쉽게 구현할 수 있습니다. 예를 들어, 커밋, 푸시, 풀 리퀘스트 등의 이벤트가 발생할 때 자동으로 알림을 보내거나 특정 작업을 수행할 수 있습니다. 이번에는 깃허브 웹 훅을 이용해 젠킨스에 빌드요청을 보내는 법입니다. 깃허브 웹 훅으로 젠킨스에 요청깃허브 웹 훅을 통해서 젠킨스에 빌드 요청을 보내는 설정입니다. 본인의 프로젝트 레파지토리 -> Settins -> Webhooks -> add webhook  등록하면 이렇게 hook test를 진행하는..

ETC/기타 14:19:55

aws 프리티어(무료) EC2 서버 생성 및 ssh 접속하는 법 총 정리(윈도우)

AWS란?Amazon Web Service의 약자로 정말 말그대로 아마존에서 제공하는 웹서비스를 뜻합니다. 대표적인게 EC2(Elastic Compute Cloud)로 불리우는 가상 컴퓨터 시스템입니다. Cloud 서비스라고 많이 부르는데 이는 아마존뿐만이 아닌 구글, 마이크로 소프트에서도 제공하고 있습니다. 예전에는 기업들이 자체적으로 인프라를 소유하고 관리하는 온-프레미즈 환경이었지만 요즘은 클라우드 서비스를 통해 물리적인 자원을 최대한 덜 소유하면서 운영하는 경우가 많아졌습니다. 하지만 개인의 경우 온-프레미즈 환경을 구성하기 어려운 경우가 많다보니 클라우드 서비스를 사용하는게 더 적합하다고 볼 수 있습니다. 그리고 그중에서 aws에서 1년짜리 프리티어를 지원하기 때문에 aws를 통해 cloud 서..

ETC/기타 2024.06.17

소스트리 커밋내역, 파일 내용 한글깨짐 총 정리 +인텔리제이 한글깨짐 설정(UTF-8)

버전관리를 위해서 깃허브를 자주 사용하기에 소스트리를 사용하고 있었고 개인 프로젝트를 보고 있었습니다. 그런데 회사에서 할때는 안보이던 한글깨짐 현상이 보여서 찾아보게 됐습니다. 차근차근 따라가서 해결이 되시는 분들이 많으실거지만 저의 경우 해결이 안되었었던 문제가 있어서 인텔리제이까지 인코딩 설정을 맞췄습니다. 따라가면서 해결이 안되시면 마지막에 제가 한 설정을 참고해보시면 좋을 것 같습니다. 소스트리 한글 깨짐 현상현상은 아래와 같이 커밋 메시지, 파일 내용에서 한글이 깨지는 현상이 보였습니다. 그래서 찾아보니 인코딩을 바꿔줘야 했습니다. [옵션-도구] 탭에서 EUC-KR 적용 하기찾아보니 아래와 같이 도구-옵션 탭에 들어가서 euc-kr을 적용해보라는 글이 많았습니다.그랬더니 커밋 메시지는 한글이 ..

ETC/기타 2024.05.25

[백준] 3055 탈출 자바 BFS 문제 풀이 및 정답

문제 요약) - 고슴도치 위치, 고슴도치 굴 위치, 물 위치, 돌 위치 등이 주어짐 - 고슴도치가 굴에 들어갈 수 있으면 이동거리, 없으면 주어진 문자 출력 주의점) - 예외 조건이 꽤 있는 편(물이 먼저 찰 예정이면 고슴도치는 진입 불가, 물은 고슴도치 굴에 접근 불가 등) 풀이) 조건 중 물이 접근 예정인 곳은 고슴도치가 접근할 수 없다는 조건이 있습니다. 따라서, 물을 먼저 q에 넣고 고슴도치 위치를 별도로 저장해서 BFS돌 당시에 물이 먼저 bfs를 돌면서 위치를 선점할 수 있게하면 해당 조건을 만족 시킬 수 있습니다. 두 번째로, 고슴도치가 굴에 도착하는지 판단할 수 있도록 고슴도치 굴의 위치는 저장해놓고 map에서 고슴도치가 가는 길은 고슴도치로, 물이 가는 길은 물로 바꿔주면 최종적으로 저장..

코테/문제풀이 2024.03.01

[백준] 7562 나이트의 이동 자바 BFS 문제 풀이 및 정답

문제 요약) - 나이트의 위치가 주어지고 8방향으로 이동이 가능 - 시작점부터 도착지점까지의 이동 거리 출력 주의점) - 8방향 좌표만 잘 기억하면 큰 어려움 x 풀이) 보통은 4방향 탐색을 많이 하는데 약간 응용해서 8방향으로 탐색을 하는 문제이기에 방향만 잘 정해서 8방향 탐색루프를 돌며 bfs 진행 정답) *Scanner 대신 bufferedReader를 사용하면 시간을 더 줄일 수 있습니다. import java.util.*; public class KnightMove7562_blog { static int[] dx = {-1, -2, -2, -1, 1, 2, 2, 1}; // 8방향 탐색 static int[] dy = {-2, -1, 1, 2, 2, 1, -1, -2}; static int t..

코테/문제풀이 2024.03.01

[백준] 2178 미로 탐색 자바 BFS 문제 풀이 및 정답

문제 요약) - 세로 n, 가로 m이 주어짐 - 출발위치에서 마지막 위치의 최소거리 주의점) - x 풀이) BFS로 풀이를 진행하며 q를 사용할때 x, y등 좌표값을 줘야하기 때문에 class를 선언해주거나 배열자체를 q에 넣어야하는데 별도 클래스를 만드는 것보다 배열이 조금 더 편해서 배열로 풀이했습니다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Maze2178_blog { static int[] dx ..

코테/문제풀이 2024.02.29

[백준] 7576 토마토 자바 BFS 문제 풀이 및 정답

문제 요약) - 익은 토마토가 4방향의 토마토를 익히는데 1일씩 걸림 - 토마토가 없는 구간은 빈 구간 - 모든 토마토를 익히는데 걸리는 최소 일 수 구하기 주의점) - 보통 세로, 가로 순서로 주는데 해당 문제는 가로, 세로 순서로 주어짐 - 출발점이 한 곳이 아닌 여러 곳일수도 있다. - 토마토가 없는 곳으로 둘러싸여 있으면 평생 안익는 토마토 존재 가능 풀이) BFS로 접근했을 때 가장 직관적인 방법은 토마토 있고 없고 표기할 맵, 방문배열, 거리를 표기할 거리배열 등 총 3개를 사용하면 가장 직관적으로 풀 수 있습니다. 하지만 거리 배열을 잘 활용하면 방문배의 역할도 같이 할 수 있기 때문에 메모리 낭비를 줄여나갈 수 있습니다. 배열을 어떻게 쓰든 시작점을 q에 차곡차곡 넣어놓은 뒤 4방향 탐색을..

코테/문제풀이 2024.02.29

[백준] 유기농 배추 자바 BFS 풀이(메모리 초과 나는 이유)

문제요약) - 땅에 배추가 심어져 있는 곳 1, 아닌 곳 0으로 주어짐 - 각 분리된 땅의 개수 세기 주의점) - BFS로 풀 때 메모리 초과 주의 풀이) BFS로 풀어본다면 방문 배추가 심어져있고 방문 안했다면 방문해서 채워나가는 식으로 진행할 수 있습니다. BFS가 한번 돌고 count를 더해주면 끝입니다. BFS 코드의 일부분인데 위에 주석처리를 해놓은 것처럼 q에 이미 넣은걸 빼면서 방문처리하게되면 다음껄 q에 넣는 동시에 방문처리 하는 것과 비슷해보이지만 해당 케이스가 많아진다면 q에 들어가는 양이 많아지기 때문에 메모리 초과가 발생할 수 있습니다. 실제로 해당 문제에서 bfs로 풀면서 주석친 부분에서만 방문처리를 하게된다면 메모리 초과가 뜨게 되기 때문에 bfs문제를 만나면 방문처리를 q에 넣..

코테/문제풀이 2024.02.26
반응형