묻고 답해요
163만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
07 메서드 참조6-매개변수2 의 강의영상중 오타 있네요
[질문 내용]07 메서드 참조6-매개변수2 의 강의영상중 오타 있네요 BiFunction<Person, Integer, String> fun2 = Person::introduceWithNumber;System.out.println("person.introduceWithNumber="+fun1.apply(person,1)); //<= fun2 의 것을 호출 해야 하는데 fun1 을 호출합니다. 복 붙 하시다가 fun2로 변경하는거 실수하신것 같네요
-
해결됨스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
카프카에 담긴 이벤트 순서가 올바르지 않을 가능성 관련 질문
안녕하세요 쿠케님, 강의를 복습하다 새로운 궁금증이 생겨 질문 남깁니다.본론부터 말씀드리자면, 카프카는 큐에 이벤트가 담기고, 동일 토픽 및 동일 파티션의 경우 동일한 offset을 쓰기 때문에 순서가 지켜져서 소모가 된다고 이해했습니다. 즉, 컨슈머가 몇개든 동일 토픽, 파티션인 경우 큐에 담겨진 순서대로 명확하게 소비된다고 이해했습니다. 그런데 만약 큐에 담겨진 순서가 올바른 순서가 아니라면 어떻게 되는 것일까요?예를 들어, 2명의 클라이언트가 거의 같은 시간에 게시글 A에 대해 댓글을 생성했고 각 클라이언트는 서로 다른 댓글 서버에서 요청이 처리됐다고 가정하겠습니다. 이때 유저 A가 게시글 A에 대한 댓글을 먼저 생성했고, 유저 B가 간발의 차로 같은 게시글에 대한 댓글을 생성했을 때, 유저 A가 생성했을 때의 게시글 댓글 수는 4였고 B가 뒤 이어서 생성했다면 5가 될 것입니다. 백엔드 서버가 전송한 유저 A의 이벤트가 알 수 없는 문제로 카프카로 늦게 도착했고, 그 사이에 유저 B의 이벤트가 먼저 큐에 담겨졌습니다. 그렇다면 제가 첨부한 그림과 같이 됩니다. (이벤트는 지연 전송 방식이 아닌 트랜잭션 After Commit 이후에 즉시 전송됐다고 가정.) 이때 컨슈머인 article-read 서비스에서 이벤트를 순서대로 소비하며 레디스에 저장된 게시글 A의 ArticleQueryModel 댓글 수를 최신화하는데 먼저 최신 값인 5로 최신화하고 다시 과거 값인 4로 최신화 할 것입니다. 이렇게 되면 게시글 A의 댓글 수 데이터의 일관성이 깨진다고 볼 수 있을 것 같습니다.그래서 이에 대한 해결책으로 이벤트 payload에 댓글의 스노우플레이크 id가 담겨 있고, 스노우 플레이크는 시간 순으로 생성되기 때문에 레디스에 게시글 A에 대해 가장 마지막으로 처리된 이벤트의 스노우플레이크 id를 저장하고 다음으로 소비될 이벤트가 가장 마지막으로 처리된 이벤트 id보다 과거에 생성된 이벤트면 이 이벤트를 무시하면 되지 않을까? 생각했지만, 게시글에 대한 이벤트 타입이 여러가지이기 때문에 다른 타입의 이벤트가 무시될 수도 있겠다는 생각이 듭니다.쓰고 나니까 너무 길게 질문 드린 것 같은데, 쿠케님의 강의가 정말 도움이 많이 돼서 이렇게 염치 불구하고 길게 질문드립니다. 이에 대한 의견 주시면 너무 감사하겠습니다. 강의 항상 잘 듣고있습니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
강의자료 실행시 오류나요
[질문 내용]여기에 질문 내용을 남겨주세요.강의자료받아서 실행시 오류가나네요 ;;뭐가문제일까요 ?? [질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예
-
미해결김영한의 실전 자바 - 중급 1편
client.disconnect()를 if 문안에 넣어서 오류발생하더라도 disconnect 메서드가 호출되고 return 되게 해도 되나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. String connectResult = client.connect();if (isError(connectResult)) {System.out.println("[네트워크 오류 발생] 오류 코드: " + connectResult);client.disconnect();return;}String sendResult = client.send(data);if (isError(sendResult)) {System.out.println("[네트워크 오류 발생] 오류 코드: " + sendResult);client.disconnect();return;}강의 내용중 오류가 발생하더라도 client.disconnect() 메서드를 불러와야한다고 하셨는데 그럼 선생님이 말씀하신 if 문으로 분기를 사용해서 String connectResult = client.connect();if (isError(connectResult)) {System.out.println("[네트워크 오류 발생] 오류 코드: " + connectResult);} else {String sendResult = client.send(data);if (isError(sendResult)) {System.out.println("[네트워크 오류 발생] 오류 코드: " + sendResult);}}.이런식으로 말고 위에 올린 코드처럼 client.disconnect(); 를 if 문 안에다 적어서 disconnect 가 되고 return 이 되겠끔 해도 되나요?
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
강의 출시 질문 있습니다.
우선 좋은 강의 만들어 주셔서 정말 감사드립니다 :)얼마전에 스프링 MVC 관련 강의를 출시 해주셨는데요. 구입하고 한번 내용 확인해보니 앞으로 강의 출시 FLOW 를 설명 해주신 내용이 있었습니다. 동시성 파트 부분인 '리엑티브 프로그래밍' -> 'WebFlux' 강의 도 있는데요. 다음 강의 출시 할때 이 부분 부터 강의 출시 해주시는 건지 알고 싶습니다. (사실 '동시성 프로그래밍' 강의 이후 '리엑티브 프로그래밍' -> 'WebFlux' 강의를 손꼽아 기다리고 있었거든요 ㅠ,ㅠ)
-
해결됨김영한의 실전 자바 - 중급 1편
try-with-resources 예제 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 항상 강의 잘 듣고 있습니다. 감사합니다. 이 예제에서 exception을 catch로 잡았는데, 왜 굳이 그걸 또 throw로 던지나요? 예외를 잡았으니 이미 해결된 것 아닌가요? 다른 예제들은 catch로 해결된 것 같은데, 이 예제는 뭐가 달라서 굳이 또 던져야 하는 건지 궁금합니다.
-
해결됨김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
인터럽트, 체크예외 catch 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]멀티스레드와 동시성 강의-스레드 생명주기 파트에서 질문 드립니다.Thread.sleep(3000)으로 InterruptedException이 발생했고, catch로 그걸 잡았는데 왜 sleep()으로 다시 돌아가서 다음 로그가 출력되는 등 정상 흐름이 마저 진행되나요? 체크 예외가 발생하면 그걸 catch로 잡더라도 이후 코드는 마저 실행되지 않아 finally 코드가 도입된 것이 아니었나요? java-mid1에서 체크 예외가 발생해 나머지 코드가 실행되지 않아 자원 정리가 안 되었던 예제를 배웠던 것 같은데, 이 예제와 무슨 차이가 있어서 다른 결과가 나오는지 궁금합니다ㅠㅠ 2. 이 예제에서 InterruptedException이 발생해서 그걸 catch한 것까지는 이해됩니다. 그런데 왜 굳이 새 RuntimeException을 생성해서 또 던지는 건가요? InterruptedException 이외에 추가로 발생할 지도 모르는 다른 예외들도 한꺼번에 잡아서 던지려는 의도인가요(예방 차원)? 3. 예외를 어떤 경우에 잡고 어떤 경우에 던져야 하는지 궁금합니다. java-mid1 예외 처리 파트에서 예외를 못 잡으면 던지고 잡을 수 있으면 잡아야 한다고 배웠는데, 그 구체적인 기준을 잘 모르겠습니다. 그걸 배울 당시에는 '아직 기초 단계라 기본 개념만 잡고 자세한 오류 해결 과정은 나중에 나오나 보다'하고 넘겼는데, 이 예제에서도 그냥 catch(발생한 오류) 정도로 넘어가는 걸 보니 제가 뭔가 놓치고 있는 것 같습니다. 그냥 catch()코드를 넣으면 오류를 잡았다고 자바 상에서 처리가 되는 건가요? 그런 거면 그냥 오류를 다 catch로 잡아버리면 될 것 같은데, 굳어 던져야 하는 상황은 어떤 상황인가요...? 질문이 너무 길어졌네요. 친절한 답변에 미리 감사드립니다!!!
-
해결됨스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
질문 하나 있습니다!
저번에 다음 강의 관련 글을 본 적이 있었는데요. 다음 강의는 Redis Cache Hit 관련 강의가 맞을까요? 맞다면 한 언제쯤 출시가 될까요! 다음 강의도 무척 기대되어서 그렇습니다!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
@OneToOne, @OneToMany만 가능한 이유
안녕하세요.강의와 강의 자료를 보는 도중, 강의 자료에 있는 고아객체 - 주의 부분에서, @OneToOne, @OneToMany만 가능한 이유에 대해서는 특별히 설명을 안해주신거 같아서요..혹시 @OneToOne, @OneToMany만 가능한 이유가 무엇인지 알 수 있을까요?감사합니다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
17분05초 업캐스팅과 출력 순서에서
X y = new Y();여기서 태어날때 생성자가 없어서 무시해도 된다는게 생성자가 있는지 없는지 보는 기준 모르겠어요 헷갈려서 ..
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
이론파트 PDF파일 받는 위치 알고 싶습니다.
어디서 받을수 있나요~
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
java 업캐스팅 and 그냥 생성
단순한 java 질문인데만약 부모, 자식 class가 있고, 자식이 부모를 상속받고 생성할때 오직 업캐스팅 형태에서만 자식 생성자를 생성할 때 부모 생성자를 만들고 생성하는 건가요?아니면 업캐스팅이 아닌 일반적으로 자식 생성자를 생성할때도 부모 생성자를 불러서 생성해야 하나요?
-
미해결토비의 스프링 6 - 이해와 원리
안녕하세요 PaymentConfig 질문드립니다.
13:39에 28라인에return new WebApiExRateProvider(apiTemplate());가 아니라 return new WebApiExRateProvider(apiTemplate());로 작성되야지 의도대로 코드가 작동하는 것이 아닌지 문의드립니다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
4분 50초 경 나온 23년 2회 기출문제 관련
혹시 문제 중에 // 천원짜리 4장 출력 등의 설명까지 같이 기출이 된 부분일까요? 아님 주말코딩님께서 우리 이해하기 쉬우라고 설명을 적어주신걸까요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
17:29 포인터 변수와 출력관련 질문입니다
오른쪽 코드에서 s가 포인터 변수로 선언이 되었으면 값을 출력할 때 *s[0]으로 써야하지 않나요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
이론 pdf 다운로드 경로가 어떻게 되나요?
강의소개에 있는 pdf파일을 찾으려는데, 암만 찾아도 보이지 않습니다.인프런 아이디(이메일)에도 없는데 어디서 다운로드 가능한가요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
이론 파트는 어떻게 공부해야되는건가요?
코드 파트는 잘 이해하고 공부 진행 했는데 이론파트 첫 강의부터 영상이 아닌 페이지라서 어떻게 공부를 해야될지 길을 잃은 느낌입니다. 이론 섹션에 들어갈때 첫 영상으로 어떻게 공부해야되는지 설명이라도 해주셨으면 좋았을 거 같습니다.. PDF랑 페이지랑 안에 내용은 또 다른 내용이라 더 혼란스럽습니다. 페이지를 가볍게 이해하고 PDF 파일을 외우라는 의도인지 아니면 둘 다 외우라는 의도인지 궁금합니다. 첫 페이지를 들어가보면 "요구사항 분석 챕터에서 중요한 부분 정리" 라고 적혀있으나 받아들이는 입장에서 중요한 부분인데 왜 PDF에는 이거에 관한 내용이 없는거지? 이 두개의 차이점은 뭐지? 라는 생각이 듭니다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
섹션2 강의자료
안녕하세요 선생님섹션2 마지막 강의 3개(함수 선언과 호출, 연산자와 기출문제, switch-case문) 강의자료가 없는데 원래 없는건지 문의드립니다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
이론 pdf
선생님 최근까지 시험 계속 본 사람인데요ㅜ요즘 문제가 예를 들어서, 문제 : 입력 자료에 초점을 맞춰 테스트 케이스를 만들고 검사하는 방법 설명보기 : ㄱ. Equivalence Partitioning, ㄴ. Boundary Value Analysis답 : ㄱ 이렇게 보기가 영어로 나올때가 있는데블랙박스테스트는 영어로 단어가 설명 안되어있어요ㅠ근데 지피티한테 물어봐도 영어를 모르겠어서여ㅜㅜ제가 책은 없고 선생님 자료로 수강중이라 이론 자료에 영어 단어도 부탁드립니다ㅜㅜ
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
이론 파트
안녕하세요 강사님이제 이론 파트로 넘어왔는데 PDF 파일이랑 수업자료 파일이랑 내용이 달라서 어떤걸 기준으로 봐야되는걸까요? 같은 내용인줄 알았는데 제목만 같고 안에 내용이 좀 달라서 질문 드립니다.