묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
bool
25:40초 쯤 HasNextComboCommand 변수를 bool로 선언하였는데요.헤더파일의 bool은 비트필드를 사용하는것 아니었나요? bool자료형을 사용하신 이유가 궁금합니다
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
젠킨스 빌드 성공후 shutdown
안녕하세요 우선 저는 gradle 로 진행을 했습니다.다른건 다 동일하게 했고젠킨스 도커 안에 들어가서 cd /var/jenkins_home/workspace/My-Third-Proejct nohup java -jar build/libs/jenkins_cicd_project-0.0.1-SNAPSHOT.jar --server.port=9000 --server.address=0.0.0.0 > app.log 2>&1 &로 실행을 하면 브라우저에서 localhost:9000 으로 접근이 잘 됩니다.그런데 젠킨스 스크립트로 실행을 하게 되면 젠킨스 도커 내의 로그를 확인해보면 계속 꺼져요. 이유가 있을까요?젠킨스 구성 설정의 shell script 는 아래와 같아요.# 기존 프로세스 종료 PID=$(ps -ef | grep "jenkins_cicd_project-0.0.1-SNAPSHOT.jar" | grep -v grep | awk '{print $2}') if [ ! -z "$PID" ]; then echo "종료 중인 애플리케이션 PID: $PID" kill -15 $PID sleep 5 fi # 새 프로세스 시작 (setsid 사용하여 별도 세션에서 실행) echo "애플리케이션 시작 중..." setsid nohup java -jar build/libs/jenkins_cicd_project-0.0.1-SNAPSHOT.jar --server.port=9000 --server.address=0.0.0.0 > app.log 2>&1 & APP_PID=$! echo "애플리케이션 PID: $APP_PID" # 시작 확인 sleep 10 ps -p $APP_PID > /dev/null if [ $? -eq 0 ]; then echo "애플리케이션이 PID $APP_PID로 실행 중입니다." curl -s http://localhost:9000 > /dev/null if [ $? -eq 0 ]; then echo "애플리케이션에 정상적으로 접근할 수 있습니다." else echo "애플리케이션 접근 테스트 실패!" fi else echo "애플리케이션 시작 실패!" exit 1 fi그리고 젠킨스 빌드 console out 도 아래와 같습니다.Started by user 허강준 Running as SYSTEM Building in workspace /var/jenkins_home/workspace/My-Third-Proejct The recommended git tool is: NONE No credentials specified > git rev-parse --resolve-git-dir /var/jenkins_home/workspace/My-Third-Proejct/.git # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/Highjune/jenkins_cicde_project.git # timeout=10 Fetching upstream changes from https://github.com/Highjune/jenkins_cicde_project.git > git --version # timeout=10 > git --version # 'git version 2.39.5' > git fetch --tags --force --progress -- https://github.com/Highjune/jenkins_cicde_project.git +refs/heads/*:refs/remotes/origin/* # timeout=10 > git rev-parse refs/remotes/origin/main^{commit} # timeout=10 Checking out Revision 6353899ff277302005bce6da4d498211ebeab06b (refs/remotes/origin/main) > git config core.sparsecheckout # timeout=10 > git checkout -f 6353899ff277302005bce6da4d498211ebeab06b # timeout=10 Commit message: "포트번호 수정" > git rev-list --no-walk 6353899ff277302005bce6da4d498211ebeab06b # timeout=10 [My-Third-Proejct] $ /bin/sh -xe /tmp/jenkins9188074144619929309.sh + ps -ef + grep jenkins_cicd_project-0.0.1-SNAPSHOT.jar + grep -v grep + awk {print $2} + PID=283 + [ ! -z 283 ] + echo 종료 중인 애플리케이션 PID: 283 종료 중인 애플리케이션 PID: 283 + kill -15 283 + sleep 5 + echo 애플리케이션 시작 중... 애플리케이션 시작 중... + APP_PID=420 + echo 애플리케이션 PID: 420 애플리케이션 PID: 420 + sleep 10 + setsid nohup java -jar build/libs/jenkins_cicd_project-0.0.1-SNAPSHOT.jar --server.port=9000 --server.address=0.0.0.0 + ps -p 420 + [ 0 -eq 0 ] + echo 애플리케이션이 PID 420로 실행 중입니다. 애플리케이션이 PID 420로 실행 중입니다. + curl -s http://localhost:9000 + [ 0 -eq 0 ] + echo 애플리케이션에 정상적으로 접근할 수 있습니다. 애플리케이션에 정상적으로 접근할 수 있습니다. Finished: SUCCESS그런데 계속 Graceful shutdown complete 가 뜹니다.참고로 다른 포트랑 충돌같은 것은 없습니다 원래 8081로 진행하다가 일부러 다른 포트로 시도해보려고 9000으로 했습니다.이렇게 젠킨스 내 컨테이너 내에서 수동 실행하면 되는데 왜 젠킨스 빌드로 하면 꺼지는 걸까요?참고로 젠킨스 도커 실행 명령어는 아래와 같습니다.docker run -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 9000:9000 -p 50000:50000 --restart=on-failure --name jenkins-server jenkins/jenkins:lts-jdk21
-
해결됨얄코의 떠먹여주는 객체지향 디자인 패턴
DIP 질문
DIP 예제 코드에서 질문이 있습니다.Switchable 이라는 interface를 객체로 Switch가 갖게되는데요.구조가 이렇게 바뀌어도Fan의 turnOn 함수에 예를 들어 매개변수가 들어가게 되면 (Overloading)Switch 클래스에도 영향이 가지 않나요?switch class의 tunrOn함수의 device.turnOn() 함수도 바뀌어야 하니까요..?
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
CoreMinimal.h 가 찾아지지 않습니다.
15강 23분까지 따라했는데모듈 헤더에서 CoreMinimal.h가 찾아지지 않아cpp 파일에서도 오류가 발생합니다.build.cs 파일에 CommonUtility 를 넣어도 보고 빼고도 실행시켜 봤는데 모두 오류가 발생합니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
블루프린트 클래스 없음
안녕하세요.10:33초 쯤에 BP_AB_CharacterPlayer 로 작업하시는데제 프로젝트에는 그런 클래스가 보이지 않네요 제가 뭘 놓치면서 진행하고있었나요?뿐만아니라 BP_ABGameMode, ABPlayer_Controller이런것들이 안보입니다.파일 탐색기에서 봤을땐 Controller, GameMode,Congratulation이런 파일들이 있는데 에디터에선 저렇게 3개 밖에 보이지않네요... 물론 BP_AB_CharacterPlayer는 파일에도 없습니ㅏㄷ.
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
failed to connect to your instance
안녕하세요 강사님,현재 강의를 참고하여 팀원끼리 클론 코딩 프로젝트를 하기위해 EC2에서 Spring Boot + MySQL 서비스를 Docker Compose로 구성하여 배포 중입니다. GitHub Actions를 통해 ECR에 푸시한 Spring Boot 이미지를 EC2에서 pull 받아서 docker-compose로 실행하는 파이프라인을 구축했습니다.현재까지 진행한 작업에 대해 말씀드리겠습니다. Spring Boot 애플리케이션을 Dockerfile로 빌드해 Amazon ECR에 업로드 EC2에 MySQL과 Spring Boot를 각각 컨테이너로 구성 (docker-compose.yml 사용) GitHub Actions에서 EC2로 SSH 접속 후 .env 생성 및 docker-compose up -d 자동 실행 설정현재 EC2 인스턴스(t2.micro)에 연결이 실패하고있습니다. ssh -v -i를 통해 로그를 확인 해본 결과 연결은 성공하지만 인증 전 또는 핸드쉐이크 중에 connection reset이 발생하였다고 합니다.현재 인스턴스 유형은 t2.micro이며, Docker로 2개 컨테이너가 실행 중이었습니다.CPU/RAM 자원이 부족해 SSH 연결도 거부되는 것 아닌가 의심됩니다. 혹시 이 경우 인스턴스 유형을 업그레이드를 하는게 해결방법일지 혹은 다른 방법이 있을까요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
강의 14분쯤 Exception 질문
[질문 내용]안녕하세요. 강의 14분쯤에,@Test 부분에서 .isInstanceOf(SQLException.class)를 했을 때, 테스트가 성공하는 이유가 궁금합니다.저는 ConnectException과 SQLException이 서로 관련이 없는 Exception이기 때문에 테스트가 실패해야 한다고 생각했습니다.혹시 Service의 logic()에서 repository.call()이 호출 될 때 SQLException이 터지고, 그로 인해서 networkClient.call()은 실행되지 않고 끝나기 때문에 테스트가 성공하는건가요?
-
해결됨[입문] 인디해커를 위한 루비온레일즈 8 입문 강의
강의 자료 다운로드 문의
강의에서 사용된 프리젠테이션을 pdf 등으로 다운받을 수 있는지 문의 드립니다.
-
해결됨핵심만 쏙쏙 Jira&Confluence
스프린트 완료 후 재수정 방법
JIRA 툴 연습을 하는 중에 스프린트 완료 버튼을 눌렀습니다.해당 스프린트를 다시 되돌리고 싶은데 방법이 있을까요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
C언어 질문입니다
강의: 배열과 문자열 시간 : 7:20 선생님0부터 5까지 반복하는 반복문이라고 하셨는데Size=5이면intArray[4] 까지이면0~4까지 아닌가요? 이유가 궁금합니다
-
해결됨[말 한마디로 뚝딱!] AI와 함께 나만의 수익화 웹사이트를 만드는 법
ai툴 유료버전사용?
혹시 커서와 챗지피티 전부 유료버전 끊어서 사용하고 계신가요?
-
미해결디지털포렌식전문가 2급 필기 핵심 요약집[전자책]
기출문제
전자책 잘 보고 있습니다.디지털포렌식 2급 필기 기출문제집을 구하고 싶은데 절판이 되어서...구할 수 있는 곳이 없을까요?
-
해결됨실리콘밸리 빅테크 29개의 실습으로 배우는 시스템 디자인 설계
채팅을 영속할 DB로 RDB를 선택한 이유도 궁금합니다
채팅은 강결합할 트랜잭션이 불필요해보이는데 nosql을 사용 하지않는 이유는 뭘까요?
-
해결됨Part2: 초중급 iOS 인스타그램 클론(SwiftUI, MVVM, Firebase, 2024)
예전코드도 배워야 할까요?
안녕하세요, 강의를 듣다가 궁금한점 생겨 문의드리려 합니다.2023년 후로 대거 전체적으로 바뀌었다고 강의에서 배웠는데요.그러면 취업해서 유지보수도 필요하다고 하면 예전 코드도 전체적으로 마스터 해야 취업하는데 큰 도움이 되거나 또는 필수적으로 해야할까요?
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
wait notify 락 획득 관련 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]1. notify 로부터 깨어난 스레드와 synchronized 메서드를 호출한 스레드 중 누가 락을 획득한다에 대한 우선권이 있나요?만약 모든 스레드가 wait 을 하고 있는 상태라면 누군가가 notify를 호출해줘야만 하는 건가요
-
해결됨PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
4-8. 지표 정의 연습 문제
안녕하세요. 4-8 지표 연습 문제 공유합니다. 이렇게 적어보니 도움이 많이 되는 것 같습니다. 아직 많이 부족해서, 피드백 주시면 감사하겠습니다.#1. 기능이 잘 동작하고 있는지 확인하려면?1) ‘기능이 잘 동작한다’는 의미를 먼저 정의- 기능이 잘 동작한다 = 유저가 관심을 가진다 = 해당 페이지에 접속한 유저가 해당 컴포넌트를 클릭한다2) 지표 1: CTR- CTR = 컴포넌트를 클릭한 수 / Page View - 관심을 가진다는 건 한 명의 유저가 여러번 클릭하는 것도 의미가 있다고 생각하기에, Unique View 보다는 Page View 선택- 배달 서비스의 특성상 아침, 점심, 저녁으로 앱에 접속할 수도 있기 때문에 일별 기준으로 데이터 확인- CTR이 올라가면, 즉 Page View 대비 컴포넌트를 클릭한 수가 증가하면 기능이 잘 동작한다고 유추할 수 있음#2. 검색 만족도 지표1) ‘검색 기능에 만족한다’는 의미를 먼저 정의- 검색을 한다는 건 유저가 무엇을 원하는지 알고 있거나, 탐색을 하고 싶은 상태일 수 있음 => 따라서 검색 기능에 만족하려면 유저가 원하는 결과를 찾아야 함- 검색 기능에 만족한다 = 원하는 메뉴를 고른다 = 구매까지 연결된다2) 지표 1: CVR- CVR = 배달 주문 수 / 검색을 한 수- 검색을 한 유저 중 몇 명이 배달 주문까지 연결되었는지에 대한 지표를 통해 ‘원하는 메뉴를 검색해서 주문까지 완료했는지’ 확인3) 또한, 서브로 검색 페이지에 들어간 순간부터 앱을 이탈하기까지의 Session 지표 확인- 유저 당 몇 번의 검색 후 결제로 연결되었는지, 검색을 한 후 결과 페이지에 얼마나 머물렀는지 등 구매 유저 행동에 패턴이 있는지 살펴보기 위한 목적#3. 검색 필터 기능의 활성화 지표1) ‘검색 필터 기능을 잘 사용하고 있다’는 의미를 먼저 정의- 검색 필터 기능을 잘 사용하고 있다 = 원하는 필터를 선택한 후 원하는 결과를 찾았다 = 결과 리스트 중 원하는 메뉴를 클릭한다2) 지표 1: 필터 기능을 사용한 유저 기준 CTR- CTR = 결과 리스트의 컴포넌트를 클릭한 수 / 필터 기능을 사용한 사용자 수- CTR이 낮으면, 필터 기능을 사용한 사용자가 원하는 결과를 찾지 못한 것일 수 있으므로, 개선 방향에 대해 논의해볼 수 있음3) 지표 2: 검색 페이지의 Unique View 중 필터 기능을 사용한 사용자 수 확인- 검색 페이지에 들어온 유저 중 몇 명의 유저가 필터 기능을 사용하는지 확인하여, 실제로 유저들이 이 기능을 사용하는지 안 하는지 확인#4. 배달 서비스에서 가장 중요한 지표는?- 매출을 확인할 수 있는 Input Metric 중 한 가지의 지표만 봐야 한다면 가장 중요한 지표는 ‘상세페이지 → 장바구니 전환율’ (상세페이지에서 메뉴를 골라 장바구니에 담는 유저의 수)- 배달 서비스를 사용하는 유저의 목적을 ‘원하는 음식을 주문한다’고 정의하면, ‘장바구니에 메뉴를 넣는 행동’을 증가시켜야 하기 때문- 따라서, 장바구니 CVR을 늘리려면,앱에 유입되는 유저의 수가 증가해야 함다양한 카테고리와 선택 옵션이 존재해야 함앱에 유입되는 순간부터 결제까지의 UX가 편하고 쉬워야 함#5. 추천 알고리즘의 성능 지표CVR = 결제한 수 / 추천 제품 클릭 수- ‘추천 알고리즘을 클릭한 사람들이 얼마나 결제하는가’를 확인할 수 있는 CVR 지표 확인- 유저에게 추천 알고리즘을 보여주는 이유는, 유저의 히스토리 데이터를 기반으로 구매를 유도하기 위해서임. 따라서, 성능이 높다면 유저는 해당 제품을 클릭하고 결제까지 연결될 것임#6. 내가 자주 사용하는 서비스의 지표*지니뮤직- 지니뮤직에서 제일 중요한 지표는 Subscription의 Retention>> 음원 스트리밍 앱 유저의 특성 중 하나는 한번 구독하면 매달 꾸준히 결제를 한다는 것임>> ‘한번 구독한 유저가 이탈하지 않고 어떻게 계속 우리 서비스를 이용하게 만들 수 있을까’에 대한 질문에서 다양한 전략이 시작되기 때문에 가장 중요함- 추가 지표 1: 스트리밍 횟수>> 구독한 유저가 앱을 활발하게 사용하는지, 단순히 앱을 다운로드 받고 사용하지 않는지 확인할 수 있음>> 후자의 경우, retention rate을 줄일 수 있는 숨어있는 요인이 될 가능성이 있음>> 따라서, 유저가 활발하게 앱을 사용하도록 꾸준히 전략을 고민해야 함- 추가 지표 2: 신규 유저 수>> 이미 구독한 유저를 꾸준히 사용하게 만드는 것도 중요하지만, 매달 신규 유저가 유입이 되어 Active User 수와 매출이 꾸준히 증가할 수 있도록 하는 것도 중요함#7. 퍼널 개선 프로젝트- 회원가입 Acquisition => 온보딩 Activation으로 생각한다면, 온보딩 효과를 파악하기 위해서는 유저가 다시 앱을 사용하는지 ‘Retention’ 지표를 확인해야 함- 온보딩을 통해 고객이 서비스에 대한 좋은 첫 경험을 했다면, 추후에 다시 서비스를 사용하기 위해 방문할 것이라는 가정을 세울 수 있음- 서비스의 특성에 따라, 다음 날 리텐션, 1주 후 리텐션, 1달 후 리텐션 등을 확인해야 함- 온보딩 개선 전/후로 코호트 그룹을 나눠 가입한 후 언제까지 사이트에 남아있는지를 확인할 수 있음
-
해결됨Flutter 앱 개발 기초
vs code 자동 포맷팅
vs code에서자동 포맷팅 관련 문의입니다.속성이 3개 이상일 때는 저장하면, 자동으로 세로 3줄 정렬 되는데속성이 2개 일 때는 가로로 1줄로 정렬이 되네요?,콤마를 붙여서 저장을 하면 콤마가 사라지고 가로 정렬됩니다.자동정렬이 강의와 다르게 되나보니 강의에서 몇번째 줄을 수정하라고 할 때 제 vs code 창과 달라서 약간 불편하네요..그리고 강의자님께 문의할 수 있는 오픈 카카오톡 채널이 있나요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
자료 pptx가 아닌 pdf
안녕하세요! 자료를 pptx가 아닌 pdf 형식으로도 제공해주실 수 있을까요
-
해결됨38군데 합격 비법, 2025 코딩테스트 필수 알고리즘
스택 - 탑문제
1. 현재 학습 진도3-5 스택부분 수강 2. 어려움을 겪는 부분백준 탑 문제를 강사님께서 구현해주신 코드로 풀어보고 있는데 강사님 코드를 사용하면 시간초과가 나는 것 같습니다.3. 시도해보신 내용 N = int(input()) tops = list(map(int, input().split())) def top_stack(N): result = [0] * N while tops: cur_top = tops.pop() for i in range(len(tops) - 1, -1, -1): if cur_top <= tops[i]: result[len(tops)] = i + 1 break print(' '.join(map(str,result))) top_stack(N)강사님께서 구현해주신 코드에 입력값을 사용자가 지정하게만 바꿔서 백준문제를 풀어보려고 했는데, 시간초과가 납니다. 제가 혹시 코드에 실수한 부분이 있는지 궁금합니다.
-
미해결파이썬으로 쉽게 배우는 gRPC!
proto를 이용한 자동 생성 관련 명령어
python -m grpc_tools.protoc -I=. --python_out=. --grpc_python_out=. {protoname}.proto강의에 명령어 띄어쓰기 잘 안보여서 기록해줌