inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

프로젝트 구조 질문 있습니다

해결됨

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

학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 항상 좋은 강의 잘 보고 있습니다. 다름이 아니라, 현재 강사님 프로젝트 구조가 정확하게 실무에서 사용하는 MSA 프로젝트가 맞나요? 아니면 , 모놀리식 기반 멀티 모듈 구조를 통해 MSA 학습을 위한 구조인가요? 현재 강의를 보면서 토이 프로젝트로 MSA 학습을 진행해보려고 하는데, 해당 구조가 실제 현업에서 사용하는 구조가 맞는지 궁금합니다 !

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

메서드 궁금한점

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 기본적인 내용입니다 헷갈리네요 메서드 작성시 객체 성성 후 메서드를 생성시 static void initMemeber( MemberInit member, String name, int age, int grade) { 이며 클래스 내부에 메서드 생성시에는 void initMemeber(String name, int age, int grade) { 입니다 이때 객체 생성 후 클래스 외부에 메서드 생성 시에 매개변수안에 MemberInit member는 왜 들어가는건가요??

  • java
  • 객체지향
JW K 댓글 1 좋아요 0 조회수 106

몇가지 질문드립니다

해결됨

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

lock flag로 스레드가 인스턴스에 접근한다고 하셨습니다. 그런데 멀티스레드에서는 동시에 인스턴스에 접근하여 각각 코어에서 연산을 하기 때문에 동기화 문제가 발생합니다. 그럼 항상 lock flag을 획득하고 접근하는게 아닌가요? 그리고 스레드가 함수 단위라 하셨는데, write 과정을 cpu 스케줄링 관점에서 생각하면 Time slice 내에서 load, read 하고 기다린 뒤 다시 자신의 차례가 왔을 때 memory에 write한다고 이해했는데 맞나요? 또한 synchronized를 이용하면 원자성이 보장된다고 하셨습니다. 그렇다면 복잡한 로직과 관계 없이 synchronized를 붙이면 스케줄링 없이 한방에 실행되는 건가요? 마지막으로.. 서버를 겉햝기식으로 공부하다가 회의감이 들어 널널한 개발자님 강의를 들으며 jvm, 자바부터 다시 공부하고 있습니다. 하지만 공부를 하면서 불안하고 회의감이 듭니다. 왜 이런 감정이 드나 생각해보았더니 jvm, 멀티스레드를 프로젝트에 어떻게 녹여서 포트폴리오화 해야 할지 모르는 막막함 때문이었습니다. 제 생각에 조언, 지적을 해주실 수 있나요?

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

MemberService에서의 Autowired

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 섹션 5 강의 중 자바 코드로 MemberService와 MemberRepository를 스프링 Bean으로 등록 후에 MemberController에서 MemberService객체를 사용할 때 @Autowired 어노테이션을 사용했는데 MemberService에서 MemberRepository 객체를 사용할 때 @Autowired 어노테이션이 없던데 이유가 무엇인지 궁금합니다.

  • java
  • spring
  • mvc
  • spring-boot
상재 권 댓글 1 좋아요 0 조회수 58

실무에서도 패키지 구조는 학습과 같이 많이 사용하게 되나요?

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요! 패키지구조에 관련하여 문의드립니다! 강의에서는 controller service .. 패키지가 이렇게 나뉘어져있는데 member - controller - service order - controller - service ... 이런 패키지구조도 있어 질문드립니다! 프로젝트, 기업마다 규칙이 다르겠지만 보통 보편적으로 어떤 패키지구조를 사용하게 되나요??

  • java
  • spring
  • spring-boot
  • jpa
6udguin 댓글 1 좋아요 1 조회수 125

자바 그룹핑

미해결

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

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 갓영한님 자바에서 이렇게 그룹핑 하는 경우도 있을까요 ? 실무에서 보통 쿼리쪽에서 하지않나용??

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
H K 댓글 2 좋아요 0 조회수 108

비관적 락 VS 네임드 락

미해결

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

안녕하세요. 해당 강의를 통해 다양한 락의 특징과 장단점을 배울 수 있어 현재 프로젝트에 적용할 수 있었습니다. 적용한 부분: 상품 재고 감소에 대한 동시성 제어 적용했던 락: 네임드 락 적용한 이유: 상품 테이블에 재고 컬럼이 포함되어 있기 때문에 비관적 락을 적용할 경우, 해당 row를 단순 조회하거나 다른 비즈니스 로직에서 락 대기 등으로 인해 영향을 미칠 수 있을 것이라 판단하여 네임드 락을 적용했습니다. 궁금한 점: 적용 이후 테스트 과정에서 알게 된 점이, MySQL의 단순 select 쿼리는 FOR UPDATE 로 인해 락이 걸린 row를 조회하더라도 락 대기나 차단이 발생하지 않는다는 사실이었습니다. 또한 네임드 락과 비관적 락 간의 부하 테스트 결과, 성능 차이가 거의 없다는 점에서, 정합성이 중요한 주문/결제 상황이라면 낙관적 락은 배제하고, 오히려 네임드 락보다는 비관적 락을 적용하는 것이 더 적절하지 않을까 하는 의문이 들었습니다. 질문: 상품 테이블에 재고 컬럼이 포함되어 있다고 하더라도 단순 조회 성능에 영향을 주지 않는다는 점에서, 네임드 락보다 비관적 락을 적용하는 것이 더 타당한 선택일지 궁금합니다. 실무적인 기준에서 어떤 판단이 더 적절할지 조언 부탁드립니다.

  • java
  • spring
  • 동시성
springYam 댓글 3 좋아요 0 조회수 187

강의자료 오타

미해결

스프링 웹 MVC 완전정복

안녕하세요, 강의를 듣다가 강의 자료에 오타가 난 부분이 있어 글 올립니다. 아래 [기존] 부분들을 [수정]으로 바꾸셔야 할 것 같습니다. 감사합니다. ------------------------------------- 04. 서블릿 이해 HttpServletRequest 기본 [기존] https://github.com/onjsdnjs/servlet/tree/httpRequestServletApi [수정] https://github.com/onjsdnjs/servlet/tree/httpServletRequestApi HttpServletRequest - 요청 처리 [기존] https://github.com/onjsdnjs/servlet/tree/httpRequestServletProsess [수정] https://github.com/onjsdnjs/servlet/tree/httpServletRequestProsess HttpServletResponse [기존] https://github.com/onjsdnjs/servlet/tree/httpResponseServletApi [수정] https://github.com/onjsdnjs/servlet/tree/httpServletResponseApi HttpServletResponse – 응답 처리 [기존] https://github.com/onjsdnjs/servlet/tree/httpResponseServletProcess [수정] https://github.com/onjsdnjs/servlet/tree/httpServletResponseProcess

  • java
  • spring
  • spring-boot
  • thymeleaf
jennie 댓글 2 좋아요 0 조회수 98

orderItems[0] 은 아직 단일주문만 가능하기에 인가요?

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요! 강의를 듣는 도중 궁금한게 있어 질문드립니다. <td th:text="${item.orderItems[0].item.name}"></td> <td th:text="${item.orderItems[0].orderPrice}"></td> <td th:text="${item.orderItems[0].count}"></td> 부분에 [0] 인건 아직 단일 주문만 가능하기에 [0] 으로 하신건가요? 개인적으로 변경하여 한 번에 여러 개의 주문이 가능하게 될 경우에는 [0] 하드코딩이 아닌 타임리프 반복문의 인덱스를 넣으면 되는건가요??

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
6udguin 댓글 1 좋아요 0 조회수 68

26. String 클래스 - 주요 메서드2 동영상 재생

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 지금 거의 40분째 동영상이 재생되지 않고 있습니다. 크롬 브라우저로 접속했고, 새로고침, 인터넷 연결 확인, 창 닫기 및 다시 열기 등 가능한 모든 방법을 시도해봤지만 여전히 심한 버퍼링 현상으로 인해 진도를 나갈 수 없습니다. 영상 자체에 문제가 있는지, 아니면 플랫폼의 오류인지 확인 부탁드립니다. 27번강의도 제대로 재생이 안됩니다

  • java
  • 객체지향
Hyunju Lee 댓글 1 좋아요 0 조회수 77

값 타입 컬렉션 대안 질문드립니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

안녕하세요. 강의에서, 값 타입 컬렉션일때는 findMember.getAddressHistory().remove(new Address("old1", "street", "zipcode")); findMember.getAddressHistory().add(new Address("new1", "street", "zipcode")); 이렇게 값을 삭제하고 추가하는 방식으로 값을 수정해줬었습니다. 1. AddressEntity entity = findMember.getAddressHistory().get(0); // entity.setAddress(new Address("newCity", "street", "zipcode")); addressEntity.getAddress().setCity("new1"); 엔티티로 변경하게되면 이렇게 수정해주면 될까요? 그리고 위와같은 수정 방식에 대해서 entity.setAddress(new Address("newCity", "street", "zipcode")); 를 하든, addressEntity.getAddress().setCity("new1"); 를 하든 동일하게 update쿼리가 하나만 발생하는것을 확인했습니다. 근데 왜 addressEntity.getAddress().setCity("new1"); 를 해도 JPA가 변경감지를 통해 update쿼리를 발생시키는지 궁금합니다. 값 타입을 수정할때는 findMember.setHomeAddress(new Address("newCity", a.getStreet(), a.getZipcode())); 이런식으로 새로운 인스턴스를 생성해서 기존 인스턴스를 교체해야한다고 하셨는데 왜 해당 부분에서는 통으로 새로운 인스턴스를 생성해서 교체하지않고 단순히 addressEntity.getAddress().setCity("new1"); 를 하면 update쿼리가 발생하는 이유가 무엇인가요? 그리고 값타입 컬렉션 대신에 이렇게 사용하는 이유가 기존 delete로 다 삭제하고 insert를 각각 해주는걸 단순히 update쿼리 하나로 해당 엔티티에 대해서만 수정하게 하기위해 인가요?? 감사합니다.

  • java
  • jpa
오리쉐리 댓글 1 좋아요 0 조회수 107

영상이 재생이 안됩니다.

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

영상이 계속 로딩만 되며 제대로 재생이 안됩니다. 1편 오리엔테이션 (1분53초) 이후 넘어가지 않으며, 4편 윈도우에서 intelliJ 설치하기 (7초) 이후 넘어가지 않습니다. 결제 후 시작조차 못하고 있습니다. 크롬으로 실행하였으며, Chrome이 최신 버전임 버전 136.0.7103.114(공식 빌드) (64비트) 버전은 최신 버전입니다.

  • java
  • 객체지향
반준 댓글 3 좋아요 0 조회수 196

다른 예외 처리 방식

미해결

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

강사님께서는 데이터를 먼저 읽고 없으면 예외를 발생시켰는데, 그렇게 하지 않고 일단 업데이트(혹은 삭제)를 시키고 나서 변경된 row의 개수가 0이면 예외를 발생시키는 방법으로 예외 처리를 해도 괜찮나요? 코드는 아래와 같습니다. if(jdbcTemplate.update(sql, request.getName(), request.getId()) == 0) { throw new IllegalArgumentException(); }}

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
푸른하늘 댓글 2 좋아요 0 조회수 63

인프런 자바 강의 보고있는데요. 질문.

미해결

Java TPC (생각하고, 표현하고, 코딩하고)

인프런 자바강의랑 패스트캠퍼스 자바강의랑 뭐가 더 최신 강의에요? 강의 내용도 다른가요? 혹시 인텔리제이 쓰는 강의는 없나요?

  • java
  • 객체지향
코드스타크 댓글 1 좋아요 0 조회수 199

교안 오타인지 확인 부탁드립니다!

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 교안 7. 고급 동기화 - concurrent.Lock.pdf 중 7페이지 두번째 줄 Thread.park(), Thread.parkNanos(long millis) -> LockSupport.park(), LockSupport.parkNanos(long millis) 수정되는 것이 맞는 내용 같은데 확인 부탁드립니다! 제가 잘못 알고 있다면, 다시 학습하겠습니다 :)

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
김재훈 댓글 2 좋아요 0 조회수 97

DP 가장 높은 탑 쌓기: 내림차순 정렬

미해결

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

오름차순 정렬 후에 dy에는 해당 인덱스의 벽돌이 가장 밑에 있을 경우로 생각해서 코드를 작성 했는데 제 논리에서는 엣지 케이스가 없는데 이런 아이디어로 dp를 풀어도 괜찮을까요? dp에는 자신이 가장 아래 있을 경우에 가장 높은 높이를 넣어줬고 내림차순이니 앞에 인덱스보다 무게가 더 높다면 해당 인덱스의 높이를 현재 인덱스의 벽돌에 올릴 수 있다는 생각으로 문제 풀이에 접근 했습니다. public void solution(int[][] arr, int n) { Arrays.sort(arr, Comparator.comparingInt((int[] a) -> a[0])); int[] dy = new int[n]; dy[0] = arr[0][1]; int maxHeight = dy[0]; for (int i = 1; i < n; i++) { int height = arr[i][1]; int weight = arr[i][2]; int mh = height; for (int j = i - 1; j >= 0; j--) { if (weight > arr[j][2]) { mh = Math.max(mh, height + dy[j]); } } dy[i] = mh; maxHeight = Math.max(maxHeight, mh); } System.out.println(maxHeight); }

  • java
  • 코딩-테스트
임인혁 댓글 2 좋아요 0 조회수 85

INDEX의 첫번째 칼럼은 정렬이 상관이 없는 것이 맞는지 궁금합니다

해결됨

6주 완성! 백엔드 이력서 차별화 전략 4가지 - 똑같은 이력서 속에서 돋보이는 법

1. 현재 학습 진도 몇 챕터/몇 강을 수강 중이신가요? 3-9강 여기까지 이해하신 내용은 무엇인가요? B+Tree 작동 원리, INDEX 생성 2. 어려움을 겪는 부분 select o1_0.id, o1_0.created_at, o1_0.member_id, o1_0.order_date, o1_0.order_number, o1_0.status, o1_0.total_amount, o1_0.updated_at from ch3_orders o1_0 where o1_0.order_date>='2023-01-01T00:00' and o1_0.status= 'COMPLETED' and o1_0.total_amount>=500 order by o1_0.order_date desc; 위와 같은 쿼리를 실행할 때, INDEX의 첫번째 필드를 date로 하였을 때, date의 정렬 방식에 따라서 속도가 달라지는 이유가 궁금합니다. (즉, 아래처럼 2가지 방식의 INDEX) CREATE INDEX ids_order_date_status_amount ON ch3_orders(order_date desc, status, total_amount); CREATE INDEX ids_order_date_status_amount ON ch3_orders(order_date, status, total_amount); 날짜 기준으로 최신 데이터를 100개 가져오는 쿼리를 실행시켰을 때, B+Tree의 leaf 노드에서는 양방향으로 이동할 수 있기 때문에 date가 ASC 정렬된 상태에서 역방향으로 읽어 최신 데이터를 읽으나, DESC 정렬된 상태에서 순방향으로 읽어 가져오나 읽는 노드의 수는 동일하다고 생각이 듭니다. 실제로 date를 각각의 정렬조건으로 INDEX를 만들어서 실제로 실행을 시켰을 때에도 거의 차이가 존재하지 않았습니다. (데이터가 많지 않아서 그런지는 모르겠습니다...) 하지만 제가 시도 한 내용이 맞는지 잘 모르겠습니다. 3. 시도해보신 내용 ASC, DESC 정렬을 시킨 INDEX를 사용하여 analyze 한 결과입니다. Limit: 100 row(s) (cost=50413 rows=100) (actual time=0.874..0.899 rows=100 loops=1) -> Index range scan on o1_0 using ids_order_date_status_amount over ('2023-01-01 00:00:00.000000' <= order_date AND 'COMPLETED' <= status AND 500 <= total_amount)... Limit: 100 row(s) (cost=50413 rows=100) (actual time=0.43..0.446 rows=100 loops=1) -> Index range scan on o1_0 using ids_order_date_status_amount over (order_date <= '2023-01-01 00:00:00.000000' AND status <= 'COMPLETED'), with index condition: (... 1번은 ASC로 정렬한 INDEX입니다. 2번은 DESC로 정렬한 INDEX입니다. 여기에서 desc로 정렬한 acutal time이 거의 2배 빨라진 것을 확인 할 수 있습니다. analyze가 정확한 값을 알려주지 않을 수도 있다는 사실을 알고 있지만, 제가 판단한 내용이 맞는지 의심이 듭니다. 딩코딩코님도 desc로 정렬을 하신거 보면 이유가 있을 것이라고도 생각합니다. Q1. 위 상황에서 INDEX의 첫번째 칼럼은 정렬 조건이 의미가 없는 게 맞나요? Q2. 만약 의미가 있다면 어떤 부분에서 의미가 있는지 궁금합니다.

  • java
  • spring
  • mysql
  • redis
  • 이력서
정석찬 댓글 2 좋아요 1 조회수 151

커맨드 패턴 개념 설명

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 커맨드 패턴 개념 설명을 어떤 강의에서 진행하셨을까요? 바로 커맨드 패턴 적용으로 들어가는 것 같습니다!

  • java
  • 네트워크
  • 객체지향
노은영 댓글 2 좋아요 0 조회수 115

스케줄러

미해결

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

내가 시간이 없어 한 바퀴 쭉 훑고 있는데 스케줄러를 활용한 배치 내용은 원래 없는 거냐? 내가 못 찾는 거냐? 아님 추가 예정이냐 답변 부탁한다.

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

컨슈머 서버 질문드립니다

해결됨

RabbitMQ를 이용한 비동기 아키텍처 한방에 해결하기

안녕하세요 @RabbitListener(queues = LogRabbitMQConfig.ERROR_QUEUE) public void consumeError(String message) { System.out.println("[ERROR]를 받음 : " + message); } @RabbitListener(queues = LogRabbitMQConfig.WARN_QUEUE) public void consumeWarn(String message) { System.out.println("[WARN]를 받음 : " + message); } @RabbitListener(queues = LogRabbitMQConfig.INFO_QUEUE) public void consumeInfo(String message) { System.out.println("[INFO]를 받음 : " + message); } @RabbitListener(queues = LogRabbitMQConfig.ALL_LOG_QUEUE) public void consumeAllLog(String message) { System.out.println("[LOG]를 받음 : " + message); } 위 의 코드처럼 하나의 어플리케이션에서 여러개를 구독하고 있는데 실제 현업에서도 하나의 어플리케이션에서 여러개의 메세지를 구독하여 각각 서비스를 처리하나요? 예를들면 문자메세지를 발송하는 외부업체에 api를 쏘는 리스너가있고 슬랙api를 통해 error 정보를 쏘는 리스너가있고 등등 .. 다양한 리스너를 하나의 애플리케이션 서버에서 처리하는지 궁금합니다

  • java
  • spring-boot
  • jpa
  • msa
  • websocket
  • rabbitmq
나마스테 댓글 2 좋아요 0 조회수 94

인기 태그

인프런 TOP Writers

주간 인기글