inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

분산 시스템 인증/인가 관련 질문 ..

미해결

장애를 허용하는 견고한 시스템 만들기

안녕하세요. 강의 잘 들었습니다. 분산 시스템이 맞는지는 모르겠지만,, 다른 회사의 API들을 여러개 사용할때에 궁금증이 있어서 질문 드립니다. 문제 상황은 아래와 같습니다. 우리 쪽에서는 이미 사용자가 토큰 기반으로 인증된 상태 이며, 이 사용자의 요청을 대신해 외부(회사1, 회사2)의 API를 호출 해야 하는 상황입니다. 또한, 사용자가 버튼을 눌렀을 때 새 브라우저 창을 띄워 회사2의 웹 애플리케이션으로 이동 해야 하는데, 이때 로그인 과정을 생략하고 자동으로 접속(SSO) 되도록 만들고 싶습니다. 질문 1⃣ API 인증 전파 관련 우리 서버가 회사1·2 서버로 요청을 보낼 때, 상대 서버에서는 “이 요청이 실제 인증된 사용자로부터 온 것”임을 어떻게 검증하는 게 일반적인가요? 2⃣ 브라우저 SSO 관련 새 탭을 열어 회사2 웹 서비스로 이동 시, 재로그인 없이 자동으로 인증(Single Sign-On) 되게 하려면 어떤 방식이 많이 사용되나요?

  • spring-boot
  • kafka
  • resilience4j
  • data-consistency
  • transaction
Duo 댓글 2 좋아요 1 조회수 111

섹션 2 - 12강 강의 제목 관련 질문있습니다.

미해결

마이크로서비스 디자인 패턴 완벽 가이드

안녕하세요. 강의 재밌게 잘 듣고있습니다. 섹션 2 - 12 목차가 Modular Monolithic Architecture 소개로 되어있는데, 실제 강의 내용이 Layered Architecture 관련 내용인 것 같습니다. 목차 명이 의도하신 것이 맞는지 궁금해서 질문드립니다!

  • java
  • spring-cloud
  • 디자인-패턴
  • msa
  • patterns
캬오옹 댓글 1 좋아요 0 조회수 81

SWAP 문법 활용 이유

미해결

실리콘밸리 데이터 리더가 알려주는 Airflow 기초

안녕하세요 한기용 지식공유자님. 좋은 강의 잘 듣고 있습니다. ELT를 구현할 때 SWAP 명령어를 사용한 정확한 이유가 궁금합니다. 제가 찾아본 바로는 SWAP 명령어는 포인터 교체 방식으로 '즉시' 데이터와 메타데이터가 교체되므로, 무중단 배포가 가능하다는 것이 장점인 것 같습니다. 사실, 트랜잭션을 활용해도 같은 기능을 구현할 수 있을 것 같은데 메타데이터 복제를 빠뜨리는 것을 예방하고, 트랜잭션을 활용하였을 때보다 성능이 우수하고, lock을 예방하기 때문에 SWAP 문법을 활용하는 걸까요?

  • python
  • sql
  • airflow
  • snowflake
jjack 댓글 2 좋아요 1 조회수 127

도커 설치

해결됨

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

윈도우 버전 이슈로 로컬에 도커를 설치 못하는 상황인데요 (예전에도 설치 이슈있어서 해결하려다가 실패) 혹시 해결 방법 알고 계실까요? 해결이 어려우면 깃허브 코드스페이스에서도 실습이 가능한 내용일까요

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
Dev Jeon 댓글 1 좋아요 0 조회수 56

예제 궁금증

미해결

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

실제로 실행을 못해보는환경이라서 질문하는건데, JobLauncher를 활용한 REST API 구현 의 예제같은경우 컨트롤러 하나를 생략없이 다 표현한거같은데 jobRegistry 는 di받지않았는데 어떻게 실행하는거임? 빼먹은건가? job = jobRegistry.getJob(jobName);

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
qwerty jon 댓글 2 좋아요 1 조회수 55

안녕하세요 주문처리에 관하여 질문있습니다 ㅠ ㅁ ㅜ

미해결

장애를 허용하는 견고한 시스템 만들기

안녕하세요. 주문 처리에 관련해서 질문 있습니다!! 고민하다가 질문드려요 ㅠ! 중복 주문을 해결하기 위해 주문 생성 API , 주문 처리 API를 나누는걸로 이해하고 있습니다. 만약 쇼핑몰에서 사용자가 주문을 할때 주문 생성 API를 요청하고 결제처리 (PG사) 성공하면 주문 처리 API(재고차감 등등) 를 하는걸로 알고 있습니다. 하지만 주문 생성 API에서 수량을 검증한다고 하더라도 결제를 완료하고 주문 처리를 할때 다른 사용자에 의해서 재고가 부족할수 있는 상황이 있다고 생각합니다. 이럴때는 실무에서 어떻게 해결하는지가 궁금합니다!!!! 비동기적으로 보상해준다고 하면 뭔가 사용자입장에서 결제까지 했는데 재고가 부족해서 주문처리가 실패하여 환불까지된다?.... 이게 좀 비효율적이라 생각해서요!! 답변 부탁드립니당 실무에서는 어떻게 사용하나요 ! 궁금해요 ㅠㅁㅠ

  • spring-boot
  • kafka
  • resilience4j
  • data-consistency
  • transaction
정인호 댓글 2 좋아요 2 조회수 205

데이터 불러오기

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

from google.colab import files upload = files.upload() 위 명령어 실행없이 바로 데이터 불러올수없나요? 퇴근후딴짓님처럼 바로 df=pd.read_csv("members.csv") 로 불러오고싶은데 에러가 나네요 No such file or directory:members.csv

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
한경주 댓글 2 좋아요 0 조회수 50

IDE - Pycharm / VSCode

미해결

Kafka & Spark 활용한 Realtime Datalake

안녕하세요 강사님! Airflow 강의에 이어 Kafka & Spark 강의도 열심히 듣고 있는 수강생입니다. 지난 Airflow 강의에서는 VSCode를 기반으로 실습을 진행했었는데, 이번 강의는 Pycharm으로 진행하시더라구요. 혹시 Pycharm 대신 VSCode를 사용하면 실습을 따라가는 데 있어서 신경써줘야 할 부분들이 좀 많을까요? 그게 아니라면 기존에 쓰던 VSCode를 기반으로 실습을 따라가고 싶어서요! 항상 좋은 강의, 그리고 친절한 답변 감사드립니다 :)

  • kafka
  • apache-spark
  • pyspark
  • data-lake
  • 카카오공채-개발
Idea 댓글 1 좋아요 0 조회수 120

핫픽스코드 수정필요

미해결

코드 5줄의 마법, 5줄 머신러닝 PyCaret: 데이터 분석 프로젝트에 AutoML 날개 달기

# --- [핫픽스] dask ↔ sktime 호환 패치 --- import types try: import dask.dataframe as dd # 최신 라이브러리 구조 변화에 대응하여 호환성을 맞춰주는 코드 # 상세한 내용을 이해할 필요는 없으며, 안정적인 실행을 위한 장치로 이해하세요. if not hasattr(dd, "core"): dd.core = types.SimpleNamespace() if not hasattr(dd.core, "DataFrame"): try: from dask.dataframe import frame as _frame dd.core.DataFrame = _frame.DataFrame except ImportError: class _DummyDF: pass dd.core.DataFrame = _DummyDF except ImportError: pass # dask가 설치되지 않은 환경에서는 무시합니다. 들여쓰기가 제대로 되어있지 않아 노션의 코드를 복사하여 붙여넣을 시 에러납니다.

  • python
  • 머신러닝
  • automl
  • mlops
  • 인공지능(ai)
Maitri_7 댓글 2 좋아요 0 조회수 98

TransactionManager 분리

미해결

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

TransactionManager 분리 에 대해서 이해가 잘 가지 않는게 있어. 실제 운영 환경에서는 배치와 비즈니스 데이터 DB를 분리하는게 필수라고 했잖아? 근데 이 분리의 단위가 배치용 메타데이터 저장만 분리를 하는게 맞는거야? 현재 사이드 프로젝트에서 멀티모듈 구조에 (MSA는 아님) API 모듈과 배치 모듈을 따로 분리한 상태야. 유저 데이터에서 생일을 뽑아서 내일 생일인 유저에게 FCM 을 발송하는 배치를 만드는데, 이때 만들어준 예제처럼 @BatchDataSource와 비즈니스 로직용 @Primary DataSource를 분리하게 되면, API 모듈용 DB Connnection을 배치에서도 똑같이 갖다 쓰는거 아니야 ?? 즉, 배치에서 API 쪽 커넥션을 가져다 써서 배치가 돌 때 커넥션이 고갈날 수 있지 않을까? 라는 생각이 들었어 지금 이해한 바로는 @BatchDataSource, @BatchTransactionManager를 분리하고 주입해줘도 Reader -> Processor -> Writer 에는 @Primary 걸 쓰는것 같은데 맞아 ? 나는 DB 분리와 함께, 비즈니스 로직에 대한 커넥션, 트랜잭션도 배치용으로 분리하고 싶은데 이럴땐 어떻게 해야해? 특히나 배치에서도 JpaTransactionManager를 쓰고 싶은 경우에는 어떻게 해야해 ? 원하는 바는, API 처리용 DB 커넥션은 커넥션대로 있고, 배치 메타데이터용 커넥션 따로, 배치에서 라이브 DB에서 유저 데이터를 가져오는 커넥션 따로 구성하고 싶어 (배치가 API 모듈 에 영향을 주지 않았으면 해서,,,) 혹시 내가 강의를 제대로 이해를 못한거라면 알려줘

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

변환된 문자열: 까지 작성하는게 맞나요?

해결됨

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

20:40 정답 변환된 문자열: Nc sc 1 이게 맞을까요? 띄어쓰기는 따로 명시되어 있는게 아니면 위에 It is 8 띄어쓰기가 그대로 적용된걸까요? 기출보니 완전 멘붕이네요ㅜㅎㅎ..

  • python
  • java
  • c
  • 정보처리기사
강선민 댓글 2 좋아요 0 조회수 80

10회 기출 강의 업데이트 문의

미해결

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

안녕하세요. 10회 기출에 대한 강의 업데이트가 언제 될까요?? 10월까지라고만 명시되어 있어서요, 대략 언제쯤 인지 궁금합니다..

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
thkdjgod5 댓글 3 좋아요 0 조회수 43

macOS Docker kafka 오류 관련

해결됨

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

질문은 아니고 kafka 개발환경 세팅 시에 저랑 같은 문제 겪으신 분들 계시면 참고하시라고 공유 드립니다. macOS 15.6.1 버전(m4 Pro 칩)에서 도커로 kafka 컨테이너 띄울 때 아래와 같은 오류가 발생했어요. # A fatal error has been detected by the Java Runtime Environment: # # SIGILL (0x4) at pc=0x0000ffff9ad3fc5c, pid=1, tid=7 # # JRE version: (21.0.4+7) (build ) # Java VM: OpenJDK 64-Bit Server VM (21.0.4+7-LTS, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-aarch64) # Problematic frame: # j java.lang.System.registerNatives()V+0 java.base@21.0.4 https://issues.apache.org/jira/browse/KAFKA-19007 이래저래 찾아보다가 그냥 3.9.1 버전으로 받아서 띄워봤는데 잘 됐어요. 같은 문제 겪으신 분들도 그렇게 해보시기를 권해드립니다.

  • java
  • kafka
westhan 댓글 1 좋아요 2 조회수 69

가용성에대한 질의..

미해결

비전공자도 이해할 수 있는 MSA 입문/실전 (feat. Spring Boot)

안녕하세요 선생님. 미션 주신거 이행하면서 궁금해서 질문드려요. 다른강의에서 가용성(Availability), 시스템 이중 에 대해서 설명해주셨는데.. MSA에서 가용성? 시스템 이중을 적용하면.. 일반 사용자가 서버 끊김을 못느끼게해야하는데.. 기존의 도커나 쿠버네티스를 2중으로 설정해줘야하는게 맞는지 궁금합니다. 예를들어서 강의에서 섷명해주신 게이트웨이,사용자서비스,게시판서비스,포인트 서비스가 있다고 할경우.. 게이트웨이 2개 사용자서비스2개 게시판 서비스2개 포인트 서비스 2개로 해야하는것일까요?

  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • devops
이경용 댓글 2 좋아요 0 조회수 95

상위 25% 데이터 구하기 및 최대값의 인덱스 구하기 질의(제13강_판다스4 - 문자열, 내장 함수 관련))

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

1) 해당 부분에서 비교연산자가 이상/이하가 아니고 초과/미만을 사용하고 있는데 분위수값에 해당하는 값이 있으면 그 결과가 다를꺼 같아서요. 25% 데이터 구하세요 하는 문제는 정의자체가 분위수값 미만의 값 이런식으로 정해진건가요? 2) 하위 25% 데이터를 구하는 함수가 있다면, 상위 25%는 ~ 를 이용해서도 함수를 쓸 수 있을까요? 3) 가장 큰 값이 두개 이상인경우 더 앞선것을 불러오던데, 해결방법이 있을까요? (가장 큰 값이 동일한경우 모든 인덱스를 불러오게끔)

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
Jeehoon Kim 댓글 2 좋아요 0 조회수 75

오타(?) 발견

미해결

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

킬구형 강의 자료 중간에 이상한 문구 발견해서 제보해 강의 회차: 5장. 작전4: Flow - 배치의 흐름을 지배하라 (분기점에서 생사를 쥐락펴락하라 ☠ 🏴‍☠ ) 이상한 문장: 즉, Spring Batch의 암시적 전환 규칙 대상에서 제외된다는 뜻이다. 재시도 Claude는 실수를 할 수 있습니다. 응답을 반드시 다시 확인해 주세요. 강의 자료 중간에 LLM에서 가져온 내용을 잘못 편집한 것 같아.

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

인텔리제이 샘플코드 실행 안됨 오류

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요! 올인원 자바와 스프링 부터로 생애 최초 서버 만들기 강좌 듣고 있는 수강생입니다. 강의 영상에 나온 것처럼 Java SE11 설치하고 IntelliJ Community Edition 설치한 후 새 프로젝트 눌렀을 때 Java SE 11 인식은 잘 하는 것 같은데, test 로 제목만 변경해서 생성했을 땐 샘플코드가 실행되지 않습니다.. 이럴 경우엔 어떻게 하면 좋을 지 궁금합니다!

  • java
  • intellij
Lynn 댓글 2 좋아요 0 조회수 188

코틀린에서 value class 적용 시 문제

미해결

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

안녕하세요 코틀린으로 현재 강의를 수강하고 있는 수강생입니다. 현재 자바로 작성된 코드를 보고 설명과 함께 어떤 이유로 이런 코드를 작성한 것인지 생각하며, 코틀린으로 이 개념을 적용하면 어떻게 작성할 수 있을지 DDD와 클린 아키텍처를 코틀린 문법 활용하여 구상하는 연습 중입니다. 현재 Member 도메인 코드 개선 강의에서 value class 적용하여 필드의 값이 바뀌는 문제(email자리에 nickname이 오더라도 같은 String이라 컴파일 에러가 안 남)를 해결하려 시도했습니다 package org.example.splearn.domain @JvmInline value class Email( val value: String, ) @JvmInline value class Nickname( val value: String, ) @JvmInline value class PasswordHash( val value: String, ) class Member private constructor( val email: Email, var nickname: Nickname, var passwordHash: PasswordHash, var status: MemberStatus, ) { fun activate() { check(status == MemberStatus.PENDING) { "회원이 PENDING 상태가 아닙니다" } this.status = MemberStatus.ACTIVATE } fun deactivate() { check(status == MemberStatus.ACTIVATE) { "회원이 ACTIVE 상태가 아닙니다" } this.status = MemberStatus.DEACTIVATED } fun verifyPassword( password: String, passwordEncoder: PasswordEncoder, ): Boolean = passwordEncoder.matches(password, this.passwordHash.value) fun changeNickname(nickname: String) { this.nickname = Nickname(nickname) } fun changePassword( password: String, passwordEncoder: PasswordEncoder, ) { this.passwordHash = PasswordHash(passwordEncoder.encode(password)) } fun isActive(): Boolean = this.status == MemberStatus.ACTIVATE companion object { fun create( memberCreateRequest: MemberCreateRequest, passwordEncoder: PasswordEncoder, ): Member = Member( email = memberCreateRequest.email, nickname = memberCreateRequest.nickname, passwordHash = PasswordHash( passwordEncoder.encode(memberCreateRequest.password.value), ), status = MemberStatus.PENDING, ) } } 강의대에서는 static 메소드인 of에서 MemberCreateRequest를 파라미터로 사옹하고 있습니다. 코틀린이라 companion object를 사용했구요 그러던 중 "헥사고날 아키텍처의 특성을 고려하면 의존성 외부 로직인 dto가 내부로 향해야 하고 따라서 도메인이 dto에 의존하는 것이 괜찮을까" 하는 의문이 들었습니다. companion object { fun create( email: Email, nickname: Nickname, password: String, passwordEncoder: PasswordEncoder, ): Member = Member( email = email, nickname = nickname, passwordHash = PasswordHash( passwordEncoder.encode(password), ), status = MemberStatus.PENDING, ) } 그래서 코드를 수정해 보면 이런 식으로 수정해 볼 수 있을 것 같습니다. 이에 대해서 토비님 의견이 어떠신지 여쭙고 싶습니다

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
  • kotlin
정라잇 댓글 2 좋아요 0 조회수 88

thread pool

해결됨

백엔드 개발자 성능 개선 초석 다지기

common pool을 사용하지 않도록 thread pool을 설정 해야 된다고 주의사항을 적어주셨는데 그 이유는 무엇인가요? 그리고 둘의 차이는 onPool-worker-3, pool-1-thread-8 이라고 알려주셨는데 차이가 이거밖에 없는건가요?

  • java
  • mysql
  • spring-boot
  • cache
  • index
Cola 댓글 1 좋아요 0 조회수 78

Arrays.sort

해결됨

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

[질문 내용] MyUser에서 compareTo를 Override한 뒤 Arrays. sort ( array ); System . out . println(Arrays. toString ( array )); 을 했을때 나이 순으로 정렬이 되는데 이게 어떻게 이렇게 되는건지 잘 이해가 되질 않습니다. sort가 내부에서 compareTo를 호출하고 array가 MyUser타입이기 때문에 MyUser에서 Override한 compareTo를 호출하는건가요?

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

인기 태그

인프런 TOP Writers

주간 인기글