묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
connect 사용시 kafka 서버
kafka connect 사용시 kafka서버와 zookeeper 구동도 필수인가요?connect는 다른 도메인으로 접근하는 것 같은데 필요한지 궁금합니다.
-
미해결실습으로 배우는 선착순 이벤트 시스템
쿠폰 카운트를 Redis에 의존하고 있는데요
만약 Redis에 장애가 발생한다면 2차 장치로 DB Count에 의존할 수 밖에 없는걸까요?실무에선 어떻게 대응하시는지 궁금합니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
kafka listener
Kafka Consumer Config에서 등록한 KafkaListenr bean은 Consumer 쪽 서비스 로직에서는 쓰지 않는것인가요?Producer에서는 등록한 template bean을 서비스 객체에서 주입받아 send에 사용하는데 listener는 어노테이션 지정후 내부 동작 하는것인지 궁금합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
kafka connect 실행 시 질문
kafka topic 생성시에는 localhost:9092의 브로커 정보를 입력해서 붙였는데 kafka connect 실행 시에는 브로커 정보없이 실행해도 조회시에 topic과 connect가 함께 출력됩니다.connect는 타겟 브로커를 어떻게 알고 적용되는 것인가요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
spring cloud 무중단 구성 방법
아래와 같은 spring cloud 환경에서 무중단 배포를 구현할려면 어떻게 진행해야하나요?맨 앞단에 L4 1대그 뒤에 spring cloud gateway 2대spring cloud eureka 2대api server 2대각 서버를 2대씩 구성한 이유는 HA구성을 위해서입니다.여기서 api server를 무중단 배포로 진행할려면 어떻게 해야되나요?api server를 down시키면 eureka의 registry에 반영된다 하더라도 gateway에서 반영되기까지는 시간걸려 down된 인스턴스로 라우팅 해주고, gateway에서 retry로직을 적용시켜도 배포순간에 많은 요청이오면 한 요청에 대해서 실패한 인스턴스로 모두 retry하여 결국 실패하는 경우도 생기더라고요 (ribbon의 avoid-previous-instance 적용시킬려고 하였으나 spring cloud gateway에서는 지원 안한다고합니다 ㅜㅜ) 현업에서는 보통 어떤 방식으로 무중단 배포를 구현하나요?
-
미해결실습으로 배우는 선착순 이벤트 시스템
안녕하세요 강사님 질문이있습니다.
현재 제 코드는 이 상태입니다.빨간색 체크를 해놓은 것만 테스트를 진행했을 때 정상적으로 예외가 발생합니다.최대 인원수를 초과해서 예외가 터지는데요,밑에있는 동시성으로 하면 service 시작부터 문제가 발생합니다.이러한 에러가 왜 발생하는지 모르겠습니다.executorService를 제가 잘못 사용하고 있는 건가요?
-
미해결실습으로 배우는 선착순 이벤트 시스템
안녕하세요 강사님 동시성 테스트에 대한 질문이 있습니다.
현재 apply 메서드에서 if (count > 100) return; 입니다.이러한 코드는 테스트하기 편하고 수강생들이 쉽게 이해할 수 있게 작성해주셨는데,실제 비즈니스 로직에서는 예외가 터질텐데 이거에 대해서는 어떻게 테스트하고 적용할 수 있나요?현재 제 코드는 이러합니다.주석이 되어있는 부분만 테스트했을 때는정상적으로 제가 원하는 값을 받을 수 있었는데, ExecutorService executorService = Executors.newFixedThreadPool(32); CountDownLatch latch = new CountDownLatch(threadCount);이 부분을 적용해서 테스트를 돌리면 무한으로 돌아가고 테스트가 종료가 되지 않습니다. 이러한 에러코드가 뜨는데 해결 방법을 모르겠습니다 ㅠㅠconstraint 뒤에는 syntax error라고 적혀있습니다. 왜 저 두 줄을 작성했을 때 이러한 에러가 발생할까요..?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
대칭키 암호화 취약점
대칭키 암호화 내용을 보고 의문이 들었습니다.config server에서 관리하는 yml 파일이 git 에 올라갔을 때 적혀 있는 데이터를 평문으로 저장하지 않고 암호화 하여 보호하려는 것은 이해를 했습니다.그러나 config server 프로젝트를 내려받으면 config 설정 파일명은 알 수 있으니 실행 후 브라우저를 통해 접근하면 원본값 반환으로 바로 알 수 있는 것 아닌가요?
-
미해결실습으로 배우는 선착순 이벤트 시스템
컨슈머를 왜 다른 모듈로 구성하는지 궁금해요!
안녕하세요. 강의 잘 듣고 있습니다.왜 쿠폰 모듈 아래 api모듈과 컨슈머 모듈을 나눠서 구성했는지 알고싶어요!!감사합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
2.6버전 이상만 있을때 어떻게 진행하나요
zuul은 지원이 안됩니다. 그러면 zuul 대신 다른 gateway를 사용해야하는건지 억지로 2.3대이하로 내려서 zuul을 사용해야하는건지 궁금합니다.혹시 zuul이외에 다른 게이트웨이를 사용해야한다면 어떤것을 사용해야하는지, 혹시 참고할 자료가 없는지 여쭙습니다
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
config name 기준
각 마이크로서비스에서 지정하는 config name이 파일 명으로 들어가는데요, 만약 다른 확장자의 동일이름인 파일인 경우 어떻게 되는건가요?ecommerce.yml, ecommerce.properties name을 ecommerce로만 지정해도 되는 이유가 무엇인지 궁금합니다. 단순 설정 파일의 확장자를 제외하는 이유인지 아님 yml 파일로만 config server에 등록될 수 있는지요
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
gateway route 순서
gateway에 작성하는 routes의 작성 순서가 의미가 있는건가요?Path=/user-service/** 를 먼저 작성하고Path=/user-service/actuater를 뒤에 작성하면 actuater에 대한 처리를 위의 path에서 가져가는 것 같았습니다.순서를 바꾸어서 작성하니 정상 동작하네요알아서 내부 로직으로 처리가 되지 않고 ,(ex) url에 actuater가 포함 시 해당 라우팅으로 수행)작성 순서에 따른 우선순위로 처리되는건지 궁금합니다.
-
미해결[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
min.cleanable.dirty.ratio 옵션에 대한 질문이 있습니다.
카프카 강의 세그먼트와 삭제주기챕터에서min.cleanable.dirty.ratio 설정에 대한 내용을 듣던중 궁금한 점이 생겼습니다. 액티브 세그먼트가 용량이나 시간 정책에 따라 헤드 세그먼트가 되었을 때 테일 세그먼트와 비교해서 ratio가 충족되지 않았을 경우에는 compact가 이뤄지지 않는 것인가요? 만약 그렇게 된다면 이 헤드 세그먼트는 앞으로 계속 더티 레코드를 가지고 있는 상태가 유지가 되는 것인지, 이 헤드 세그먼트가 시간이 지나 테일 세그먼트가 되었을 때는 새로운 헤드 세그먼트와 비교를 하게 될텐데 클린 레코드가 아닌데 ratio가 의미없어지는게 아닌지 생각이 들더라구요. 이에 대해서 알려주시면 감사하겠습니다 :)
-
미해결15일간의 빅데이터 파일럿 프로젝트
우지 설치중 오류가 뜹니다
어떤 식으로 해결해야할 지 잘 모르겠습니다 ㅠ밑 캡처본은 Assign Roles 현황입니다
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
instanceId
instanceId 설정할때${spring.application.instanc_id:${random.value}}로 들여쓰는 이유가 뭔가요?그냥 ${random.value}로도 생성이 되는것은 확인을 했는데요.. 이유를 모르겠습니다.
-
미해결실습으로 배우는 선착순 이벤트 시스템
카프카 네트워크 관련 에러
org.apache.kafka.clients.NetworkClient : [Producer clientId=producer-1] Error connecting to node f9ffc2ed14a4:9092 (id: 1001 rack: null)에러 메시지는 위와 같습니다.현재 m2 노트북을 사용하고 있어 호스트가 arm64 플랫폼입니다. arm64를 지원하는 주키퍼, 카프카 이미지를 설치하였습니다.도커 컴포즈 파일입니다.version: '2'services:zookeeper:image: docker.io/bitnami/zookeeper:3.8container_name: zookeeperports:- "2181:2181"environment:ZOOKEEPER_CLIENT_PORT: 2181ZOOKEEPER_TICK_TIME: 2000ALLOW_ANONYMOUS_LOGIN: yeskafka:image: docker.io/bitnami/kafka:3.4container_name: kafkaports:- "9092:9092"environment:KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181volumes:- /var/run/docker.sock:/var/run/docker.sock 나머지 코드는 동일합니다.
-
미해결실습으로 배우는 선착순 이벤트 시스템
nGrinder script
nGrinder test script도 혹시 공유가능하실까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
SOA vs MSA
구분에 대해 명확히 이해가 되지 않는데요,SOA 경우도 서비스 단위 개발이고 Microservice도 그렇지 않나요? 그 규모의 차이가 둘을 구분 짓는 건가요?ex) SOA의 서비스 단위가 숙박 예약 기능이라고 하면Microservice는 숙박조회, 결제 ... 으로 더 세분화 그리고 SOA에서 직접 서비스간에 데이터 교환을 하는 것에서 발생하는 의존 문제로 인해 ESB를 도입했다고 봤는데요, Microservice에서는 API를 통해 서비스 간 통신 시 이런 의존문제가 없을 수 있는건가요? 뭔가 구체적인 예시로 비교해주시면 감사하겠습니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
eureka에서 클라이언트 삭제
구동시킨 클라이언트를 모두 중지하였는데 유레카에서 삭제가 안되네요.. 캐시가 남는걸까요?
-
미해결실습으로 배우는 선착순 이벤트 시스템
kafka 컨슈머 테스트 시 Thread.sleep 이외 방법
안녕하세요.kafka 동시성 테스트 시 컨슈머가 비동기로 데이터를 처리하니까 컨슈머가 모든 데이터를 polling하기 전에 이미 메인 스레드가 종료되어 테스트 케이스가 실패로 끝나는 경우에서요.Thread.sleep으로 일정 시간을 멈추는 방법 말고는 처리할 수 있는 또 다른 방법이 있을까요?