inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

자원 정리시 에러가 발생 했을 때 메모리 상황 및 실무에서 로그 확인 방법

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 안녕하세요 강의 잘 듣고 있습니다. 자원정리에 대한 강의를 듣던 와중에 OS단의 메모리 상황과 실무에서 처리 방법이 궁금하여 질문드립니다. [질문 내용] 강의 내용 자원 정리를 하다가 나는 에러 (CloseException) 등에 대해선 try-catch로 잡은 뒤, log만 남긴 뒤 무시하고 있음 궁금한 점 자원 정리를 하다가 에러가 나면 자원이 정리가 안된 채로 메모리에 남아있을 것 같습니다. 이를 추후 로그를 확인하고 일괄 수동 정리 처리를 하는지, 아니면 보통 자원마다 동작 타임 같은 게 설정되어 있어서 자동으로 정리되기 때문에 신경쓰지 않고 넘어가는지 궁금합니다. 만약 첫번째 질문에서 추후 로그를 확인하고 일괄 수동 정리 처리를 하는게 맞다면, 자원정리 도중 뜬 에러 관련한 것만 로그에서 추출해서 확인한다던지 어떤 방식으로 로그에서 필요한 내용만을 효율적으로 확인해서 처리하는지 궁금합니다. (참고로 이전에 김영한님 강의에서 Logger를 AOP를 이용해 남겨 양식을 통일화 시키고 레벨을 통해 효율적으로 확인하는 방법은 확인하였습니다.)

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

함수형 프로그래밍 적용 범위/원칙

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

질문 1. 자바는 인터페이스와 클래스로 설계와 구현을 나눠 유지보수의 효율성을 높이는 언어인데, 함수형 프로그래밍은 언제 쓸까요? 실무에서 함수형을 적용하는 범위/원칙 (불변, 부작용 분리 등)가 궁금합니다! 질문 2. stream vs for-loop 선택 기준이 궁금합니다. 가독성을 위해서 또는 단순 변환 및 집계일 때 이외에도 스트림을 사용하는지, 성능적으로는 어떤 것이 더 좋은지 등도 궁금합니다.

  • java
  • 함수형-프로그래밍
em k 댓글 1 좋아요 0 조회수 86

인덱스 설계를 시도해 볼만한 예시 프로젝트 같은게 있을까요?

해결됨

김영한의 실전 데이터베이스 - 기본편

explain을 통한 인덱스 사용여부를 확인하는 방식 외에 실제로 간단한 비즈니스 로직에 다량의 데이터가 세팅되어 인덱스를 테스트해 볼만한 프로젝트가 있을까요? 물론 실제 운영 중인 회산 혹은 개인 프로젝트가 있다면 직접 예측 및 적용해보는 것이 제일 좋겠지만 그렇지 못한 경우도 있기에 여쭈어 봅니다

  • sql
  • dbms/rdbms
하디 댓글 2 좋아요 0 조회수 112

조건절의 위치 관련 질문사항

미해결

김영한의 실전 데이터베이스 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 조인을 이용시 on절 뒤에 and를 이용해서 추가 조건절을 이용하는 방식과 where 절에서 조건절을 넣는 방식중 유의미한 성능상에 차이가 있는지 궁금합니다. 추가적으로 어떤 방식이 좀더 정돈된(?) 방식인지도 궁금합니다.

  • sql
  • mysql
  • dbms/rdbms
  • SQLD
yskim 댓글 1 좋아요 0 조회수 53

강의에서 나온 IN 최적화 관련 질문

미해결

김영한의 실전 데이터베이스 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. 이번 복합 인덱스3 강의에서 인덱스 활용 팁으로 범위 조건을 IN 절로 바꿔 최적화하는 부분을 설명해 주셨습니다. IN 이 마치 OR 처럼 변화될 수 있다고 설명해 주셨고 실제 쿼리 실행 시에 이를 확인할 수 있었습니다.(강의 시간 18분 경) 그런데 이후 비유해주신 쿼리에서는 UNION ALL 을 사용하셨습니다. 저는 OR 과 UNION ALL 이 동일한 기능을 수행한다 생각했지만 실제로 눈으로 확인하고 싶어서 다음 세가지 쿼리를 모두 EXPLAIN , ANALYZE 해보았습니다. 1) 기존 IN 쿼리 EXPLAIN ANALYZE SELECT * FROM items WHERE category IN ('패션', '헬스/뷰티') AND price = 20000; 2) OR 로 풀어낸 쿼리 EXPLAIN ANALYZE SELECT * FROM items WHERE (category = '패션' AND price = 20000) OR (category = '헬스/뷰티' AND price = 20000); 3) UNION ALL 로 풀어낸 쿼리 EXPLAIN ANALYZE SELECT * FROM items WHERE category = '패션' AND price = 20000 UNION ALL SELECT * FROM items WHERE category = '헬스/뷰티' AND price = 20000; 그 결과 2)의 처리 cost는 1.41, 3)의 처리 cost는 0.7로 나타났으며, 1)은 2)와 동일하게 실행되었습니다. 여기서 다음 의문이 나타났습니다. 1) IN 최적화는 OR 또는 UNION ALL 방식으로 옵티마이저가 상황에 따라 선택하나요? 혹은 OR 방식으로만 처리하나요? 2) OR , UNION ALL 을 모두 사용할 수 있을 때, 언제 각각을 사용하는 것이 더 좋을까요? 그리고 위 경우에서는 왜 UNION ALL 이 더 cost가 작았을까요? 3) 만약 새로운 카테고리가 추가된다면 모든 IN 쿼리에 해당 카테고리를 추가할 수도 있을 것 같습니다. 그래서 애플리케이션 계층(JPA 등으로)에서 category >= '패션' 인 SELECT DISTINCT 쿼리 1번, 해당 값을 통해 IN 에 넣어주는 쿼리 1번, 총 2번 쿼리를 실행하는 방식으로 바꾼다면 기존 쿼리를 수정하지 않아도 괜찮을 것 같은데 실무면에서 어떻게 생각하시는지 궁금합니다! 긴 질문이었습니다. 감사합니다!

  • sql
  • mysql
  • dbms/rdbms
ZZAMBA 댓글 1 좋아요 0 조회수 75

아키텍쳐 선택의 순수한 질문드립니다.

해결됨

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

안녕하세요 토비님! 순수한 궁금증이 생겨서 질문 드립니다! 아키텍처마다 장단점이 있다고 생각합니다. 프로젝트의 규모나 확장성 여부에 따라 어울리는 아키텍처가 다를 것 같은데요, 토비님은 현업에서 어떤 기준을 가장 중점적으로 두고 아키텍처를 선택하시는지 궁금합니다!

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
마르크스 댓글 2 좋아요 0 조회수 94

실무에서 느린쿼리나 벡엔드 성능 테스트하는 방법이 궁금합니다.

미해결

김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복

75강 인덱스 설계 - 실습 관련 강의 중에 느린 쿼리를 로그 분석을 하거나 성능 테스트를 통해서 실제 쿼리 패턴과 성능을 측정해서 특정 컬럼에 인덱스를 적용해야 한다고 하셨는데요. 로그를 하나씩 확인하면서 각 쿼리별로 비교하기가 조금 불편하고 어려울 것 같습니다. 또한 몇가지 쿼리 케이스만으로 성능을 일반화하기도 쉽지 않을 것 같구요. 실무에서 느린쿼리나 다양한 벡엔드 성능 테스트를 수행하는 별도의 모니터링 프로그램이나 방법론이 존재하는지 궁금합니다. 또한 저희 실습에서 사용한 MySQL에서는 어떤 식으로 테스트를 수행하면 좋을지 알려주세요.

  • sql
  • mysql
  • dbms/rdbms
  • 소프트웨어-설계
  • SQLD
개발하는 분석가 댓글 1 좋아요 0 조회수 133

팩토리 메서드 패턴과 일반 생성자 사용의 장단점

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 기본형과 참조형 - 참조형과 메서드 호출 - 활용 강의 자료 보고 생긴 궁금증입니다! 자바에는 객체 생성 시 초기화를 담당하는 "생성자(Constructor)"가 있는데, createStudent()와 같은 팩토리 메서드 패턴과 일반 생성자를 사용하는 것의 장단점이나, 어떤 상황에 어떤 방법을 사용하는 것이 더 적절한지 궁금합니다!

  • java
  • 객체지향
정서연 댓글 1 좋아요 0 조회수 127

OR 조건 간소화

해결됨

[백문이불여일타] 데이터 분석을 위한 기초 SQL

안녕하세요, 강의를 듣고 있는 인프런 학습자입니다! 중복이 없는 시티 필드를 출력하는 DISTINCT 예제 중 select city From station where city like 'a%' or city like 'e%' or city like 'o%' or city like 'i%' or city like 'u%'; 이라는 구문이 있는데 or 조건은 항상 각각 조건을 명시해줘야하는걸까요? 정규식을 제외하고 따로 간소화가 불가할지 궁금해서 질문 드립니다.

  • sql
  • mysql
  • 카카오공채-서비스
qjarl1119 댓글 1 좋아요 0 조회수 76

오브젝트와 인스턴스

해결됨

토비의 스프링 6 - 이해와 원리

안녕하세요. 오브젝트와 인스턴스에 대해 제가 기억하고 있는 비유가 하나 있습니다. "오브젝트가 소나타라면, 돌아다니는 소나타 하나 하나가 인스턴스이다." 이 비유는 적절한 비유인가요? 혹은 오해의 여지가 있는 비유일까요?

  • java
  • spring
댓글 1 좋아요 0 조회수 60

JVM 메모리와 CPU 1,2차 캐시

해결됨

기초 탄탄! 독하게 시작하는 Java Part 3(상) : 멀티스레드와 동기화

어떤 강사님께서는 volatile 을 설명하실때 'JVM 의 메인메모리 와 작업메모리' 로 설명해주시지 않고 CPU 와 1, 2차 캐시 사이에 동기화를 하는데 쓰여진다고 설명을 하셨는데요. 널널한 개발자님께서 설명한 부분이 더 정확하다고 생각이 듭니다. 제가 궁금한건 말씀하신 내용처럼 JVM '메인메모리' 와 '작업 메모리' 사이에서 동기화가 필요할때 여러 문법들을 사용한다면, java 를 사용할때 CPU 와 1,2 차 캐시 사이의 동기화에 대해서는 신경쓸 필요 없다고 이해해도 될까요? 이 부분을 JVM 이 알아서 처리한다고 이해하는게 맞을까요?

  • java
  • jvm
  • lock-free
  • generic
  • multithread
writer0713 댓글 2 좋아요 0 조회수 109

synchronized 와 인스턴스의 lock

해결됨

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

[질문 내용] 이 부분을 보면 synchronized 메서드를 호출하려면 인스턴스의 lock이 필요하다고 되어잇는데, 헷갈리는 부분이 있습니다 인스턴스는 메서드 단위가 아닌, 클래스 단위로 존재하는거라고 알고 있는데, 그러면 지금 synchronized 된 메서드 하나를 호출하면 해당 클래스 전체에 Lock 이 발생한다(다른 스레드는 접근하지 못한다)는 개념으로 이해가 되는데 이렇게 동작하는게 맞는건지 궁금합니다

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
송인효 댓글 2 좋아요 0 조회수 132

data class와 자바의 Lombok을 이용한 DTO 클래스 차이 질문

미해결

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

안녕하세요. 좋은 강의를 제공해주셔서 감사합니다. 현재 코틀린과 자바를 함께 사용하는 프로젝트를 준비 중입니다. 그 과정에서 DTO를 구현할 때, 코틀린에서는 data class 라는 매우 편리한 기능이 있다는 것을 알게 되었고, 이와 관련해서 질문이 있습니다. 궁금한 점은, 실무(특히 스프링 기반 개발)에서는 DTO를 작성할 때 자바의 Lombok을 주로 사용하는지, 아니면 코틀린의 data class를 더 많이 사용하는지 입니다. 또한, 두 방식의 차이점과 선택 기준 에 대해서도 알고 싶습니다. 감사합니다!

  • java
  • kotlin
  • 객체지향
eunseo lay 댓글 1 좋아요 0 조회수 98

View와 프로시저 차이는 무엇인가요?

미해결

김영한의 실전 데이터베이스 - 기본편

[질문 내용] View와 프로시저는 비슷한 개념인 것 같은데 차이점이 무엇인가요?

  • sql
  • mysql
  • dbms/rdbms
  • SQLD
kimyongjun0129 댓글 1 좋아요 0 조회수 100

실프로젝트에서 Java25버전 사용

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의에서는 Java 21버전을 사용하고, 현재 최신 LTS 버전은 25입니다. 실무에서는 21버전을 계속 사용하다가 25버전이 안정화되면 25버전을 사용하나요? 아니면 22, 23, 24 바로 업데이트 하는 경우가 많을까요?

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
댓글 1 좋아요 0 조회수 145

쇼핑몰 주문 테이블 관련 문의

미해결

김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복

교육용이라 아직 요구사항이 명확히 없는 상태에서 테이블구조가 나오는 것 같은데 만약 하나의 주문에 여러 상품이 들어올 수 있고 각각의 상품을 취소할 수 있게 되야한다고 한다면 어떻게 변경하게 될까요?

  • sql
  • mysql
  • dbms/rdbms
  • software-design
  • SQLD
Rorschach 댓글 1 좋아요 0 조회수 71

MessageConversionException 예외 타입

미해결

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

안녕 킬구형 형 때문에 이번 추석 연휴 재밌게 보내고 있어. 고마워 형. 강의를 보면서 예제 소스에 대한 궁금증이 생겨서 질문을 남겨. 6장. 작전4: 원격 청킹 (Remote Chunking) - 전방위적 타격이 시작되다. ☠ ' 데이터 변화 모듈(SerDes Classes)' 예제에서 예외 객체로 MessageConversionException을 사용하는데 클로드에서는 통상 Kafka를 사용할때는 org.apache.kafka.common.errors.SerializationException 을 사용해야 kafka와 호환이 된다고 하더라구. 이거에 대해 설명 부탁해도 될까?

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

실무 예시가 궁금합니다.

미해결

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

형 아직 잘 이해가 안되서 그러는데, Job 안에서 Chunk 방식 Step과 Tasklet 방식 Step을 혼합해서 사용하는 실무 예시를 알려줄수 있어?

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
JeYeong 댓글 2 좋아요 1 조회수 95

sharding의 기준, shard key 사용에 대해

해결됨

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

대부분 하나의 DB만을 사용하다보니 shard key가 고려되지 않은 테이블 설계를 보고 많이 사용했는데 처음부터 shard key는 고려하면서 설계를 하는것이 좋을까요? 저같은 경우처럼 shard key가 고려되지 않은 테이블에서 샤딩을 하기위해서 shard key를 추가하는 작업은 어느정도의 난이도가 있을까요? 강사님이 생각하시는 데이터베이스 샤딩을 위한 기준같은게 있으신지 궁금합니다.

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
장연식 댓글 2 좋아요 0 조회수 86

인기 태그

인프런 TOP Writers

주간 인기글