inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

강의 구매는 했는데

미해결

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

윈도우 유저는 불가능한 강의인가요?

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
Hugh Park 댓글 2 좋아요 2 조회수 110

스프링 컨테이너 재시작 반복 현상

미해결

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

Jenkins를 바탕으로 Job들을 PipeLine으로 연결해서 사용중이다. Job들이 순차적으로 실행해야해서 아래처럼 파이프라인을 구성했다. pipeline { agent any stages { stage('Print Parameters') { steps { echo "=========================================" echo "🔧 Job Configuration" echo "=========================================" echo "startDate: ${params.startDate}" echo "endDate: ${params.endDate}" echo "pageNo: ${params.pageNo}" echo "numOfRows: ${params.numOfRows}" echo "=========================================" } } stage('Run abandonedAnimalDataLoadJob') { steps { script { echo "🐾 Starting abandonedAnimalDataLoadJob..." sh """ java -Duser.timezone=Asia/Seoul \\ -Dspring.profiles.active=local \\ -jar /var/jenkins_home/SeeYouAgain-Batch-0.0.1-SNAPSHOT.jar \\ --spring.batch.job.name=abandonedAnimalDataLoadJob \\ startDate=${params.startDate} \\ endDate=${params.endDate} \\ pageNo=${params.pageNo},java.lang.Long \\ numOfRows=${params.numOfRows},java.lang.Long """ echo "✅ abandonedAnimalDataLoadJob Completed!" } } } stage('Run s3ProfileUploadJob') { steps { script { echo "📤 Starting s3ProfileUploadJob..." sh """ java -Duser.timezone=Asia/Seoul \\ -Dspring.profiles.active=local \\ -jar /var/jenkins_home/SeeYouAgain-Batch-0.0.1-SNAPSHOT.jar \\ --spring.batch.job.name=s3ProfileUploadJob \\ startDate=${params.startDate} \\ endDate=${params.endDate} """ echo "✅ s3ProfileUploadJob Completed!" } } } } post { success { echo '=========================================' echo '✅ All Batch Jobs Completed Successfully!' echo '=========================================' } failure { echo '=========================================' echo '❌ Batch Job Failed. Please check the logs.' echo '=========================================' } always { echo "Pipeline execution finished at ${new Date()}" } } } 로그를 찍어보니 스프링 컨테이너가 켜지고 첫번째 job이 끝난 후 컨테이너가 종료, 2번째 job을 실행하기 위해 스프링 컨테이너 켜지고 job이 끝난 후 컨테이너가 종료되는 비효율적인 현상을 발견했다. Claude한테 물어보니 job 실행시간이 짧아서 크게 문제없다고는 하지만, 개인적으로 Job이 많거나 추후에 오래 걸리는 Job이 추가될 경우엔 시간도 오래걸리고 리소스 낭비라고 생각한다. 이런 상황에선 어떻게 하는게 좋은가??

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
ehddbs452100 댓글 3 좋아요 1 조회수 63

강의자료

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

강의자료 일괄 다운로드나 합본 있을까요?

  • python
  • java
  • c
  • 정보처리기사
이수진 댓글 1 좋아요 0 조회수 67

줄바꿈

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

14:21 줄바꿈 표시가 없는데 줄바꾸는 이유는 뭘까요?!

  • python
  • java
  • c
  • 정보처리기사
조찬희 댓글 2 좋아요 0 조회수 44

섹션 3 퀴즈 5번 문제 해설 관련 질문

해결됨

한 입 크기로 잘라먹는 React.js 실전 프로젝트 - SNS 편

안녕하세요. 섹션 3 퀴즈에서 5번 문제 관련 질문 드립니다. 질문: persist 미들웨어 사용 시, 액션 함수가 기본적으로 저장되지 않는 이유는 무엇일까요? 해설: persist 미들웨어는 상태를 JSON 형태로 저장하기 때문에, JSON으로 직렬화할 수 없는 함수는 저장하지 않아요. 따라서 serialize 옵션으로 상태만 저장하는 것이 좋습니다. 강의에서 serialize 가 아닌 partialize 로 설명해주셨는데, 이 부분 확인 부탁드립니다.

  • react
  • typescript
  • react-query
  • supabase
  • zustand
춘식이 댓글 2 좋아요 0 조회수 77

(7.14) 포스트 삭제 후 무한 스크롤이 작동하지 않는 문제

해결됨

한 입 크기로 잘라먹는 React.js 실전 프로젝트 - SNS 편

안녕하세요. 좋은 강의 잘 수강하고 있습니다! 다름이 아니라 포스트 삭제 후에 무한 스크롤이 작동하지 않는 문제가 발생했습니다. 문제 상황은 다음과 같습니다. 첫 페이지(다음 페이지의 데이터를 페칭하지 않은 상태)에서 작성한 포스트를 삭제 이후 페이지 최하단까지 스크롤 했지만 무한 스크롤 데이터 페칭이 이루어지지 않음 부족한 실력이라 AI의 도움을 받아 원인을 분석했을 때 다음과 같았습니다. 아래는 AI의 답변입니다. 무한 스크롤이 작동하지 않는 원인 분석: getNextPageParam 의 로직 useInfinitePostData 훅에서 다음 페이지를 불러올지 결정하는 로직은 다음과 같습니다: // src\hooks\queries\use-infinite-posts-data.ts // ... const PAGE_SIZE = 5; // ... getNextPageParam: (lastPage, allPages) => { if (lastPage.length < PAGE_SIZE) return undefined; // 🚫 문제의 원인 return allPages.length; }, 이 로직은 "마지막으로 불러온 페이지의 항목 개수가 PAGE_SIZE (5개)보다 적으면, 더 이상 데이터가 없으므로 undefined 를 반환하라 (즉, 다음 페이지를 불러오지 마라)"고 지시합니다. 삭제가 로직에 미치는 영향: 초기 상태: 0번 페이지에 5개의 게시글이 있습니다. ( lastPage.length = 5) 삭제 이벤트: 사용자가 0번 페이지의 게시글 1개를 삭제합니다. 캐시 업데이트: useDeletePost 의 onSuccess 에서 해당 게시글 ID를 0번 페이지의 캐시 데이터 에서 제거합니다. 결과: 0번 페이지의 항목 개수가 5개에서 4개 로 줄어듭니다. 무한 스크롤 시도: 사용자가 스크롤하여 ref ( inView )가 활성화됩니다. getNextPageParam 실행: React Query는 0번 페이지의 현재 캐시 데이터 를 확인합니다. lastPage.length 는 이제 4 입니다. 잘못된 판단: 4 < PAGE_SIZE (5) 이므로, getNextPageParam 은 즉시 undefined 를 반환 합니다. 따라서 1번 페이지(실제 서버에는 데이터가 있을 수 있음)를 불러오기도 전에, 캐시 데이터가 줄어든 것 때문에 다음 페이지 로딩이 차단 되어 무한 스크롤이 작동하지 않게 되는 것입니다. 마지막 페이지에 속한 포스트를 삭제했을 때, PAGE_SIZE보다 항상 작아지니 다음 페이지가 없다라고 판단하기에 무한 스크롤이 작동하지 않는다고 이해했습니다. 캐시를 무효화해 리페칭해서 해결하려고 하는데, 다른 대안이 있을까요? 혹여 제 실수로 잘못된 동작이 일어난 건지 GitHub Repo도 같이 첨부했습니다! https://github.com/scseong/onebite-sns

  • react
  • typescript
  • react-query
  • supabase
  • zustand
seong2 댓글 1 좋아요 4 조회수 124

포르테이너 로그 오류

해결됨

수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화

현재 하라는데로 했는데 저는 로그를 보면 이렇게 나옵니다

  • docker
  • n8n
  • 인공지능(ai)
  • 프롬프트엔지니어링
  • ai-활용-(ax)
  • 카카오공채-개발
jimin6060 댓글 2 좋아요 0 조회수 69

mac m시리즈 설치과정

미해결

대세는 쿠버네티스 (초급~중급편)

m4 mac mini로 k8s 구성을 따라했는데 namespace kubernetes-dashboard의 모든 파드와 kube-system namespace에 coredns 2개의 파드 그리고 metrics파드가 pending상태로 지속되고 node들은 전부 notready상태에서 멈춰있습니다 처음에는 제가 구성을 잘못했나 싶어서 utm에 vm을 지웠다가 다시 구성하기를 반복했는데 할때마다 똑같이 안되어서 질문드립니다

  • docker
  • kubernetes
  • devops
  • container
Meowl 댓글 3 좋아요 1 조회수 134

1장 작전 3 Listener 어노테이션 사용 사례 @Component 질문

미해결

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

어노테이션을 사용한 Listener 를 정의할 때 @Component 어노테이션으로 빈으로 등록시켜줬는데, 실제로 Listener 클래스를 지정할때는 new ServerRackControlListener() 로 직접 생성해주고있네? 빈으로 등록한것과, 직접 생성한 것이 서로 연관되지 않는것 같은데 빈으로 주입받아서 넣어주는게 좋을까 아님 Listener 클래스를 빈으로 등록하지 않고 직접 생성해서 사용하는게 좋을까? 배운대로 Listener 클래스에서 JobExecution 이나 StepExecution 을 사용하는데, Job 실행이나 Step 마다 Execution 이 다를 수 있으니까 빈으로 등록하지 않아도 될 것 같은데 어떻게 생각해?

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
현승우 댓글 2 좋아요 1 조회수 70

23년 2회 C언어 29분 질문입니다

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

정렬 구현에 관한 문제 이다 라는데 이건 무조건 오름차순 인가요? 정답이 < 면 내림차순도 가능한데 오름차순이라고 봐야 할까요?

  • python
  • java
  • c
  • 정보처리기사
태주 댓글 1 좋아요 0 조회수 81

10강 vs코드에서 막힙니다

해결됨

수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화

10강 vs코드에서 막힙니다. 코파일럿사용해서 하는데 계속 결과값이 강의랑 다르게나오면 그냥 기존에 자료를 다운받아서 사용해도되나요?

  • docker
  • n8n
  • 인공지능(ai)
  • 프롬프트엔지니어링
  • ai-활용-(ax)
  • 카카오공채-개발
jimin6060 댓글 3 좋아요 0 조회수 123

12. switch-case문 강의에서 4:30 질문입니다.

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

에서 for(int i =0 ; i < 3; i++) 여기 질문인데요 i가 3 미만인데 73, 95, 82 를 더하나요? 3이 안되기 때문에 3개를 못더하는 거 아닌가요?

  • python
  • java
  • c
  • 정보처리기사
skaerjgh2 댓글 2 좋아요 0 조회수 46

Next.js 마치며.. 강의 피드백 폼 링크 연결 문제가 있습니다.

해결됨

한 입 크기로 잘라먹는 Next.js

안녕하세요. 좋은 강의로 Next.JS 수강을 마쳤습니다. 그런데 수업노트에 있는 강의 피드백 폼 링크가 엉뚱한 곳으로 연결 됩니다. https://forms.gle/MhvAagJvttQCtS1f6 링크 주소를 치고 들어가면 제대로 들어 접근하는데.. 링크를 클릭하면 다른 곳으로 연결됩니다. 수정이 필요합니다.

  • react
  • typescript
  • next.js
  • 카카오공채-개발
Codingbear 댓글 2 좋아요 0 조회수 67

스케줄의 스레드를 최대한 사용하지 않고 WebFlux를 사용해야 되는 게 맞는지 궁금합니다.

미해결

Spring WebFlux + LLM 실전 구현

안녕하세요. 강의 잘들었습니다. 강의를 듣고나서 궁금한 점이 있어서요. WebFlux의 스케줄을 통해서 스레드를 분리해서 JPA를 사용한다고 봤고, 그리고 신뢰성이 떨어져도 괜찮은 데이터는 R2DBC를 사용한다고 보았습니다. 그렇다면, 스케쥴의 스레드를 최대한 사용하지 않고 WebFlux에서 지원해 주는 컴포넌트를 사용하는게 최적이라고 생각되는데 맞을까요? 제 짧은 생각으로는 JDBC를 사용하면 결국에는 스레드 풀을 사용할 것이고, 사용자가 많아지면 많아질수록 스레드는 부족할 것이라고 생각이 돼서요. 이렇게 되면 WebFlux를 사용하는 이유가 점점 퇴색될 것 같다는 생각이 듭니다. 그렇다면 제가 생각하기로는 WebFlux를 사용하면서 지원하는 컴포넌트(Netty가 지원해 주는 컴포넌트)를 잘 알고, 적절한 Stream 함수를 알고 사용하는 게 제일 중요하다고 생각되는데, 이게 맞는지 궁금합니다.

  • java
  • spring
  • webflux
  • chatgpt
  • llm
콩코드여객기 댓글 1 좋아요 0 조회수 88

맥북에서 MbaXterm 안되서 Contabo VPS 직접 설정하는법..

해결됨

수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화

안녕하세요, 도커 설치 강의에서 헤매다가... 맥북 터미널로 어찌어찌하여 vps 를 설치했는데,, 해당 화면이 뜨면 설치가 완료된걸까요? (이런 컴퓨터 다루는게 처음이라 질문드립니다..! )

  • docker
  • n8n
  • 인공지능(ai)
  • 프롬프트엔지니어링
  • ai-활용-(ax)
  • 카카오공채-개발
우성 댓글 2 좋아요 0 조회수 109

강좌 복습 팁이 있으신 분들 공유해주시면 감사하겠습니다.

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 자바 고급편 수준이 저한테 높아서, 느린 배속으로 반복해서 내용을 겨우 이해는 했는데 강의 내용이 자기 것으로 되었다는 느낌이 없고 교안이나 영상 없이는 이론 설명이나 예제 코드 작성이 잘 안 됩니다. 강의 내용을 자기 것으로 체화하신 분들은 어떻게 복습하셨나요?

  • java
  • 네트워크
  • 객체지향
happyrichman 댓글 1 좋아요 0 조회수 141

아직 29강을 헤매고 있는 학생입니다ㅜㅜ

해결됨

수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화

계속 ddns가 안되어서 방화벽도 해제 하고 공유기 업체 as도 불러봤더니 cj 헬로비전이었던 제 공유기에선 ddns가 설치가 되지 않았습니다.. (공유기 as 기사님도 처음 이런 문의가 왔다고 당황하셨습니다.ㅎㅎ) 결국 duckdns 로 ddns를 만들어내고 포트도 9900으로 설치하고 핸드폰으로 wifi를 끄고 포트가 제대로 작성하는지 확인해보니 http://rkdkdkfka.duckdns.org:9900 로그가 남는걸 확인했습니다. ddns주소와 포트 확인하고 다시 n8n 구동을 하게 되면 여전히 안되고 있습니다. 어떤게 문제가 되고 있는걸까요? ddns 확인을 하고 포트도 정상으로 되는걸 확인하고 방화벽도 해제 되어 있는데 진행이 되지 않으니 답답함을 느낍니다. (코드는 강사님께서 수업자료에 남겨주신 코드로 진행했습니다.) PS: 혹시 이 노드를 생략해도 뒤에 강의 진행에 차질이 없는지도 여쭤보고 싶습니다.

  • docker
  • n8n
  • 인공지능(ai)
  • 프롬프트엔지니어링
  • ai-활용-(ax)
  • 카카오공채-개발
Garam Lee 댓글 1 좋아요 0 조회수 66

revalidateTag 에서 매개 변수가 하나 더 늘어서 질문합니다.

해결됨

한 입 크기로 잘라먹는 Next.js

안녕하세요. next.js 16 버전으로 해당 강의를 보며 달리고 있는데요. revalidateTag 설정에서 파라미터 값이 하나 더 늘어나 있습니다. revalidateTag(tag: string, profile: string | { expire?: number }): void; tag 파라미터 뒤에 profile 파라미터를 넣어야 하네요. 기본적으로는 'max' 값을 넣었고, expire로 사용자 지정 만료 동작을 위한 값을 지정하게 되어 있습니다. 이것이 구체적으로 어떤 매개변수인지 궁금합니다. 그리고 이전의 tag 파라미터만 있을 경우 와 같은 조건의 매개변수 값은 어떻게 되는지 알고 싶습니다.

  • react
  • typescript
  • next.js
  • 카카오공채-개발
Codingbear 댓글 1 좋아요 0 조회수 109

3강 spting 빌드환경에서 mysql 부분 질문있습니다.

해결됨

eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)

intelilJ 에서 어플리케이션 실행시 application.yml 프로파일에 default 부분이 깃허브에 올라온 파일에는 prod로 되어있고 그대로 실행하면 mysql에서 ordersystem 테이블 생성이 정상적으로 되지 않아서 강의를 상세하게 보니 코드부분에 local로 실행을 시키셔서 그것을 바꾸고 실행하니 테이블 안에 member , ordering , product는 생성되었는데 포스트맨에서 로그인 테스트시 임의로 만든 이메일 계정 조회시 404가 뜨는데 제가 어느부분을 놓쳐서 정상적으로 작동이 안되는걸까요? 그부분 상세하게 설명 부탁드리겠습니다.

  • aws
  • docker
  • kubernetes
  • github-actions
  • argocd
jerome287 댓글 2 좋아요 0 조회수 99

인기 태그

인프런 TOP Writers

주간 인기글