inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

공부 방법

해결됨

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

안녕하세요 6년차 개발자입니다. 일주일 남았는데 공부할 시간이 마땅치 않아 기본적으로 코딩할줄 안다는 하에 꼭 봐야하는 섹션 추천해주실수 있을까요? 섹션 7~ 이론 자료 추천해주시면 감사하겠습니다 ㅠ

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

강의 구매는 했는데

미해결

죽음의 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

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

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

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

미해결

Spring WebFlux + LLM 실전 구현

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

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

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

미해결

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

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

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

16강 질문있습니다.

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] package io.buffered; import java.io .FileInputStream; import java.io .IOException; import static io.buffered.BufferedConst.BUFFER_SIZE; import static io.buffered.BufferedConst.FILE_NAME; public class ReadFileV2 { public static void main(String[] args) throws IOException { FileInputStream fis = new FileInputStream(FILE_NAME); long startTime = System.currentTimeMillis(); byte[] buffer = new byte[BUFFER_SIZE]; int fileSize = 0; int size; while ((size = fis.read (buffer)) != -1) { fileSize += size; } fis.close(); long endTime = System.currentTimeMillis(); System.out.println("File name: " + FILE_NAME); System.out.println("File size: " + fileSize / 1024 / 1024 + "MB"); System.out.println("Time taken: " + (endTime - startTime) + "ms"); } } 이 코드를 컴파일했을 때 Time taken이 6ms 언저리로 자꾸 나오는데 컴퓨터마다 다 다르게 찍히는 건가요? 강의에서는 1ms로 나와서 제가 타이핑을 잘못했나 싶어서 여쭤봅니다.

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

continue와 pass 차이점

해결됨

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

예시만 봤을 때는 continue와 pass의 차이점이 명확히 구분되지 않는 것 같아 질문드립니다. 1. continue: if문에 해당하여 continue를 만나면 (print가 있다는 가정하에) 출력하지 않고 다음 반복으로 넘어감 pass: if문에 해당하여 pass를 만나면 그 부분만 지나가고 (print가 있다는 가정하에) 밑에 출력은 실행함 저는 이렇게 이해하고 있는데 오류가 있을까요? 2. pass 예제2번에 else 없이 print(i)만 있었더라면 3도 출력이 되는건가요?

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

2중 for문

미해결

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

2중 for문은 안된다고 하신거 아니었나요?

  • java
  • 코딩-테스트
Cola 댓글 2 좋아요 1 조회수 112

샤딩에 대해서 궁금점있습니다.

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

저의 짧은 지식으로는 샤딩은 수평분할에 기반한 방식이라 수직은 존재하지 않는 것으로 알고 있습니다. 혹시, 이부분에 대해서 설명을 해주실 수 있으신가요?

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
hahahl 댓글 2 좋아요 0 조회수 120

authorization-server 라이브러리 질문이 있습니다.

미해결

스프링 시큐리티 OAuth2

강의 내에서 dependencies 하고 있는 spring-security-oauth2-authorization-server 랑 아래 org.springframework.boot:spring-boot-starter-oauth2-authorization-server 과는 다른 라이브러리인가요? 프로젝트 생성하면서 oauth2 authorization 서버를 선택 후에 build.gradle를 확인했는데 강의에서 나온 것과 상이하여 질문드립니다.

  • java
  • spring
  • spring-boot
  • oauth
infbackends 댓글 1 좋아요 0 조회수 108

낙관적 락을 사용할 떄 차이점

미해결

재고시스템으로 알아보는 동시성이슈 해결방법

@Version만 붙여도 자동으로 낙관적 락을 적용 시켜주는 걸로 알고 있습니다. 근데 강의에서는 @Lock(LockModeType.OPTIMISTIC) 을 이용해서 조회 시점부터 락을 거는 이유가 있을까요? @Lock(LockModeType.OPTIMISTIC) 를 제거하고 동시성 테스트 했을 떄도 정상적으로 돌아가긴 합니다. 어떤 차이가 있을까요

  • java
  • spring
  • 동시성
문수 댓글 2 좋아요 0 조회수 170

애그리거트의 repository

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요 토비님! 애그리거트를 사용할 때 질문 사항이 있습니다. 예) A도메인 B도메인이 있다 A는 애그리거트 루트이고 B는 A의 부속 엔티티이다.A와 B는 일대다, 다대일의 양방향 의존성을 가진다.B는 A를 통해서만 조작될 수 있다.이 때 B를 생성하거나 업데이트 할 때 B의 repository는 어디에 존재해야 하는가? @Entity public class A { @OneToMany(mappedBy = "media", cascade = CascadeType.ALL, orphanRemoval = true) private List<B> bs = new ArrayList<>(); public void updateNumber(long n){ this.bs.stream().forEach(b -> b.update(n); } } @Entity public class B { @ManyToOne(fetch = FetchType.LAZY) private A a; private long number; public void update(long n){ this.number = n; } } 이렇게 되어 있다고 할 때 변경 가능성을 생각할 때(물론 엔티티에서 이미 jpa에 기술을 사용하고 있긴하지만) B의 repository를 따로 가지는게 맞나요? 만약 따로 가진다면 B의 repository가 A repository에서 의존하여 처리 되어야 하나요? jpa에 완전 종속적으로 사용하면 B가 따로 repository를 가질 필요 없는데 순수함을 유지하지 하려 하니 이 부분에서 고민이 되네요. 아니면 이런 고민 자체가 잘못된걸까요?

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
rhdrlehf5 댓글 2 좋아요 0 조회수 155

래퍼클래스 박싱 출력

해결됨

김영한의 실전 자바 - 중급 1편

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요 예 [질문 내용] 안녕하세요 자바 래퍼클래스 강의를 듣다가 궁금해서 질문 남깁니다. 래퍼클래스 생성 (=박싱)하고나서 변수를 출력을 해보면 생성자에 주었던 값이 출력되게 되는데요. 래퍼 클래스는 기본형을 객체화 시킨것이라고 알고 있고, 그렇기 때문에 변수에는 객체기 때문에 참조값이 들어가야한다고 알고있는데 왜 참조값이 아닌, 객체에 들어있는 멤머 변수 값이 출력이될까요?ㅠ

  • java
  • 객체지향
박준혁 댓글 1 좋아요 0 조회수 87

서버 인프라 관련 질문 (1)

해결됨

비전공자도 이해할 수 있는 AWS 입문/실전

안녕하세요! 항상 좋은 강의 잘 듣고 있습니다! 서버 인프라를 어떻게 설계해야할 지 판단이 잘 안서서 이렇게 질문드립니다. 제가 개념이 미숙하다보니 제 생각에 대한 설명이 뭔가 중구난방할 수 있다는 점 양해부탁드립니다. 일단 첫번째로 생각하고 있는건 ELB, Nginx에 대한 고민입니다. 내용이 길어서 질문은 나눠서 올리려고 합니다. 제 머릿 속에 있는 걸 그냥 그대로 끄집어낼게요. ELB로 EC2에 직접 접근 (Client -> ELB -> Spring Boot) ELB를 80/443 으로 열고, http에 대한 타겟그룹을 8080로 설정한 후 EC2 쪽 인바운드는 8080만 열어야 하는가? ELB는 WAS가 아니라서 Nginx처럼 리액트 빌드 결과물 (정적파일)을 서빙 못하지 않을까? 그럼 S3 파트에서 배웠던 내용대로 S3 + Cloud Front 방식으로 리액트 결과물 내보내야 할까? https 설정은 Nginx 대비 이게 더 편한거같음 Nginx만 사용 (Client -> WAS (Nginx) -> Spring Boot & React) ELB 대비 https 인증이 경험 상 상당히 까다로웠음 (자동 인증사 만료 처리도 해야하고...) EC2 안에서 React까지 처리하기 좋았음 이 경우는 인바운드를 80/443 열고 nginx 에서 reverse proxy ELB + Nginx 사용 (Client -> ELB -> Nginx -> Spring Boot & React) ELB는 로드밸런서 역할과 https 인증 담당용 (로드밸런싱은 추후 확장가능성 염두, https 인증은 elb가 더 쉬우니까) Nginx는 내부에서 리버스 프록시 적용 https 처리는 elb가 쉬우니까 이거 쓰고, 리버스프록시와 정적 파일 서빙은 nginx에게 위임하겠다는 취지 만약 이럴 경우, ELB는 80/443 열고 EC2는 80만 허용하면 되는건가? 그러면 80->443 리다이렉션하고 443은 타겟그룹 80을 향해 들어가면, EC2에서 80으로 들어온 요청을 nginx가 리버스 프록시 어떤게 적절한 선택일지 고민중입니다. 서버 인프라를 구성하기 위해 참조할 만한 자료로 깃헙을 찾아보니, 다른 프로젝트 아키텍처 보면 다 2번처럼 하는 것 같았습니다. 근데 실습을 했을 때 ELB가 https 인증이 너무 쉽게 되었던게 매력적이었어서 차마 2번 방식에는 손이 잘 안갑니다. 근데 1번만 하자니, 과연 1번만으로 충분할까? 라는 의문이 들었습니다. 그래서 ELB랑 Nginx를 혼합해서 쓸까라는 생각까지 이어진건데요. 3번은 저 생각대로면 각자의 편의를 챙겨가기는 하지만 좀 더 복잡한 아키텍처같은 생각도 들어요. 우선 각각의 생각에 오류가 있는지, 그리고 전문가의 식견으로 봤을 때 어떤게 더 나은 접근인지 여쭤보고싶습니다. 어려운게 있으면 항상 박재성님 강의부터 찾습니다. 늘 도움받아갑니다. 감사합니다.

  • aws
  • aws-elb
  • aws-rds
  • ec2
  • s3
Hooby 댓글 2 좋아요 0 조회수 73

서버 인프라 관련 질문 (2)

해결됨

비전공자도 이해할 수 있는 AWS 입문/실전

안녕하세요! 항상 좋은 강의 잘 듣고 있습니다! 서버 인프라를 어떻게 설계해야할 지 판단이 잘 안서서 이렇게 질문드립니다. 제가 개념이 미숙하다보니 제 생각에 대한 설명이 뭔가 중구난방할 수 있다는 점 양해부탁드립니다. 고민하고 있는건 EC2 등 모델 선정입니다. 그리고 RDS, ElastiCache 도입여부 또한 고민중입니다. 제 프로젝트는 거의 싸이월드 같은 사이트를 만들어야 하는 상황입니다. 알림, 조회수, 좋아요 기능, 파일 업로드, 스트리밍, 게시판, 댓글 등이 주된 기능입니다. (이때 파일 업로드는 multipart/form-data 업로드와, 동영상과 같은 대용량 파일 처리를 위한 AWS Multipart Upload 방식으로 나뉩니다.) 한번 AWS 강의에서 배운걸 다 써먹어보고 싶어서 EC2, RDS, S3, ElastiCache 도입을 상정해봤습니다. 초기 단계 모델을 먼저 결정한 후 K6 등으로 동시접속자 수 100명 200명 300명 순으로 테스트를 진행해서 스케일업을 고려중입니다. (데모 시연도 하고, 실제로 한달 간 출시도 해봐야해서요) 구상중인건 다음과 같습니다. 1단계 (개발 중) :: CI/CD용 : t4g.small (EBS 있으니까 여기 안에서 Redis랑 DB, 서버 다 돌림) + S3 2단계 (개발 완료 후 배포) :: 실제 운영 테스트용 : Case 1. t4g.small + S3 (CI/CD용 그대로) Case 2. t4g.small + RDS + S3 (Redis는 EC2 안) (RDS는 EC2모델과 같은 사양으로) Case 3. t4g.small + RDS + S3 + ElastiCache Case 4. t4g.medium + RDS + S3 + ElastiCache 근데 Case 3까지만 가도 AWS 계산기 돌려보니 월 10만원이 조금 넘더라구요. RDS에서 프록시나 Insights 설정 빼고 SingleAZ로 변경한게 저 수준이었습니다. 너무 비싸더라구요. Case 4는 한 17만 7천원 나오더라구요... RDS가 많이 비싼 것 같습니다. 비용이 비정상적인게 아니라면, 그대로 진행해도 전 좋습니다. 배움에 돈아끼면 안된다고 생각하거든요. 근데 그게 오버스펙이나 비정상적인 설계로 비용이 많이 나오는건 별개의 문제잖아요. 그래서 결국 어떻게 서버 인프라를 구축할지에 대한 고민이 많습니다. 비용이 제 기준에서는 높지만 남들 기준에선 높은게 아닐 수도 있고, 아니면 정말로 너무 높게 나온걸 수도 있어서 정상적으로 프로젝트에 맞게 아키텍처를 구축한게 맞는지, 잘못되었다면 어떻게 조정해야할지에 대한 판단이 어렵습니다. 실례가 안된다면, 지금 제가 어떤 문제가 있는지, 제 상황에선 어떤 아키텍처가 적절한지 설명부탁드려도 될까요? 이건 저 생각이 들기까지의 내용들을 정리한 노션 페이지입니다. https://hooby.notion.site/Server-Infra-Setup-28af6c063f3e80b7a8c3d653add0c068

  • aws
  • aws-elb
  • aws-rds
  • ec2
  • s3
Hooby 댓글 2 좋아요 0 조회수 87

인기 태그

인프런 TOP Writers

주간 인기글