묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
DTO를 서비스 레이어에서 사용할 수 밖에 없다면
엔티티를 쓰지 못하는 상황JDBC Template나 nativeQuery처럼 직접 조회가 필요한 경우에는 엔티티를 사용하기 힘들 것 같은데이런 경우에 DTO를 사용하게 되면 서비스 레이어에 해당 부분이 생길거 같은데 이 정도는 괜찮은 걸까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
Whitelabel Error Page 오류가 났습니다.
h2-console 웹에 접속하려고 하니 Whitelabel Error Page 오류가 뜹니다. 그래서 구글링하니 Spring Security에서 h2 console을 허용하라는데 어떻게 하는지 잘 모르겠습니다 ㅜㅜ.. 도와주세요 ㅜㅜ
-
미해결스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
조회수 정보를 어디서 저장할지 고민입니다.
안녕하세요. 강의 너무 잘 듣고 제 프로젝트에 필요한 부분들로 리팩토링 하면서 MSA를 처음 공부하려 했습니다!먼저 제 프로젝트는 거의 똑같은 구조로 게시글이 있습니다. 2가지의 질문이 있습니다. (1) 정보를 취합하기 위해 동기로 API호출을 한다는 것은 장애 전파가 된다고 이해하고 있습니다. 그렇다면 저희 예시에서도 Article-read에서 조회수는 api호출을 통해 받기로 했습니다. 그렇다면 어느정도의 장애 전파는 허용한다고 받아들여집니다. 실제 서비스에서도 여러 정보를 취합해서 줘야하는 경우가 많을텐데 API를 통해 정보를 가져오는것이 절대 안되나요? 아니면 종종 허용하기도 하나요? (2) CQRS의 Query(질의)부분은 데이터 수정이 없어야 한다 이해했습니다. 그런데 데이터를 수정해도 되나요?예를 들어 제가 게시글 상세 조회를 게시글 모듈에서 분리하려고 합니다. 그런데 게시글 상세 조회를 하게되면 조회수가 올라갑니다. 따라서 게시글 상세조회 발생 -> 조회수 증가 이벤트 발생 ->조회수 증가 이런 식으로 구상을 했습니다. 이러한 질의 부분 모듈에서 데이터를 수정하게 만드는 이벤트가 발생해도 괜찮을지 여쭤봅니다!!
-
해결됨누구보다 빠르게 배우는 Nginx + Docker + Springboot 서버 무중단 배포
인스턴스를 1개만 사용 할 경우
강의에선 ec2 인스턴스가 3개로 분산 하였지만프리티어만 한다는 가정하에 한 ec2 인스턴스안에 nginx, 컨테이너 안에 was 인스턴스를 2개 한 경우에도 두 개의 서버 인스턴스 포트를 달리 한다면 무중단 배포가 가능한가요?
-
해결됨누구보다 빠르게 배우는 Nginx + Docker + Springboot 서버 무중단 배포
도커파일 내용이 노션 강의자료랑 강의영상이 서로 다릅니다.
노션 강의자료에서는 # 2. 앱 JAR 파일 복사 COPY *.jar app.jar 이렇게 되어 있는데 강의 영상에서는COPY build/libs/*.jar app.jar 로 되어 있습니다. 강의 영상이 맞는거 같고, 아무 생각 없이 노션 자료로 복붙하다가 안되서, 둘을 자세히 비교해보니 빌드된 jar 파일 경로를 제대로 명시되지 않은 걸 발견했어요.노션 파일 수정 부탁드려용
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
강의자료 업데이트 문의
깃허브에 올라와있는 강의자료는 언제쯤 업데이트 될까요?
-
미해결장애를 허용하는 견고한 시스템 만들기
데이터 버저닝 질문
안녕하세요.먼저 좋은 강의 감사드립니다. 데이터 버저닝에서 이해가 가지 않는 부분이 있어서 질문 드립니다.낙관적 락을 사용하는걸 봤습니다.결과적으로 발행시와 소비시의 버전이 같아야 하는데, 대규모 시스템에서 장애가 발생하지 않으려면 프로듀서에 아이디 1인 상품 발행하고 나서컨슈머에서 처리하기 전까지 절대 새로운 이벤트를 발행하면 안되는거 아닌가요? 만약 컨슈머에서 처리하기 전에 이벤트를 발행하면 똑같은 버전이 후에 계속 들어와서 이 재고 업데이트는 무시되는게 아닌가 해서 질문드립니다. 맞다면 재고 감소 멱등성은 어떻게 해결하면 좋을지 고견 듣고 싶습니다. 감사합니다.
-
해결됨누구보다 빠르게 배우는 Nginx + Docker + Springboot 서버 무중단 배포
감사합니다.
기존에는 리눅스에서 war파일 묶어서 수기로 배포하고그랬는데... 그러다보니 배포를 시간이 불규칙하다보니 너무힘들었습니다..본강의를 통해서..인텔리제이와 스프링 부트 접해보면서 무중단은 이렇게.. 배포하는 구나 하는 경험을 이해하게되었고몇번 연습하고 실제로 적용해볼 예정인데..하나더 질문드려도 될까요?디비에 접속하는 application.yml에 민감한 파일같은경우..깃이그노어로 통해서 배포 커밋 못하게 설정을 한다고 설정했을때.....디비 접속이나 민감한 정보같은경우는..배포한 서버의 프로젝트 폴더안에 수기로 처리해야하는것일까요?..첨부해주신 노션자료 잘 학습하겠습니다.바쁘신데 신경써주셔서 정말로 감사합니다.
-
해결됨가장 쉽고 깊게 알려주는 Kafka 완벽 가이드 [ By. 비전공자 & Kakao 개발자 ]
자바 17로 하셨던데 21로 해도 되나요?
자바 17로 하셨던데 21로 해도 되나요?
-
해결됨누구보다 빠르게 배우는 Nginx + Docker + Springboot 서버 무중단 배포
저는 PATCH 보다 PUT이 더 편하던데
안녕하세요 무중단 배포 해보려고 강의 열심히 듣고 있는 수강생입니다.저는 보통 업데이트 엔드포인트 제공할 때, PUT으로만 구현합니다. PATCH를 제공하면, 받아야할 값들이 null인지 아닌지를 다 따지느라 번거롭더라고요.지식공유자께서는 실무에서도 PUT 보다는 PATCH를 더 많이 사용하시는지 궁금하네요.
-
미해결견고한 결제 시스템 구축
Transaction Demo 질문 드립니다.
개발자님 안녕하세요. 혹시 Transaction Demo 관련 소스에서강의에서 비즈니스 로직을 밑에 부분에 넣으면 되는 걸까요? 제공된 pdf 파일 소스는 잘렸는데, 소스는 어디서 참조 할수 있나요? Transaction Demn 소스 부분에서if (!records.isEmpty()) {producer.beginTransaction(); for (ConsumerRecord<Ingeger, String> record: records) {/***이 부분에 비즈니스 로직이 들어 가면 되는걸까요?강의에서의 비즈니스 로직이 들어 가면 될까여?***/ ...} getRemainingRecords() 함수랑getOffsetToCommit() 함수를 알고 싶습니다. shudown()은 어떻게 되어 있나요? consumer.subscribe(singleton(inputTopic), this);에서 this로 override 하라고 검색에서 알려 주는데 소스를 알수 있나여?
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
강의 업데이트 내역 질문
안녕하세요.강의 업데이트가 된 거 같은데 혹시 업데이트 된 내역을 확인 할 수 있는 곳이 있을까요? 어떤 부분이 바뀌었는지 궁금합니다~
-
미해결웹소켓/STOMP 채팅서비스(spring, vue, redis)
추가 커스텀 구현 질문 있습니다.
로그인을 했을 때 소속된 채팅방에 안 읽은 메시지가 있다면, 알림(보통 종모양)에 +안읽은메시지숫자를 구현 하려고할 땐 sse 통신을 이용하는게 좋을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
소요 시간
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 스프링 처음 공부하고있습니다.한번 듣고 어려워서 자바부터 다시 다지고 재도전 하는 중입니다.생각보다 소요시간이 오래 걸려서 이게 제 길이 아닌건지, 공부 방법이 잘못된건지 질문드립니다..강의 1시간 짜리를 듣는다고 했을 때, 4~5시간은 걸립니다실습에, 복습에, 이해 안가는 코드 공부까지 같이 하는 중입니다.. 이해가 안가서 멈추고 계속 보느라 더 오래 걸리는 것 같아요.그래도 시간 투자하니 조금은 알 것 같긴 합니다만.. 그치만.. 이게 맞을까요,,?? ㅠㅠ
-
미해결견고한 결제 시스템 구축
cdc 방식
개발자님 안녕하세요 결제 승인 메시지 발행영상에서 권장되는 cdc 방식에 문의 드립니다. Outbox 테이블을 cdc 방식으로 kafka로 전송 하면 되는 걸까여? 이 방식을 적용 하면, 스케줄러로 Outbox를 다시 읽어서 전송 한는 로직은 진행 하지 않아도 될까여? cdc방식으로 db log를 읽어서 전속 하는 방식은 기존에 kafka로 전송 하고, 응답으로 record를 받아서, 잘 받았는지 여부를 체크 하지 않는데, cdc 방식은 잘 전달 되었다고 가정 하고 진행 하는 걸까요?
-
해결됨누구보다 빠르게 배우는 Nginx + Docker + Springboot 서버 무중단 배포
궁금한게있습니다.
세션 5 에서 무중단 강의 통해 nginx를 이렇게 구현하구나 알게되었는데요..만약에 ec2를 리액트나 프론트?용 서버 하나더 구축하게되면 셋팅은 어떻게되는지 알려주실수있으실까요?기존의 방식과 똑같습니까?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
빌드 툴, Gradle
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]강의 첫 영상에서 build 할 때 Build and run using : GradleRun tests using : Gradle 하셨는데주문서비스Test 돌릴 때 인텔리제이로 돌리면 위 사친 처럼 나오고gradle 로 해서 돌리면 위 사진 처럼 나오는데 강의 영상에선 인텥리제이로 해서 돌리신 것 같은데 인텥리제이로 해서 돌려도 괜찮은 것인가요? 문제 발생할 수 있다고 해서 궁금해서 여쭤봅니당..
-
해결됨스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
카운팅 조회 시 질문
안녕하세요 질문있습니다.만약 게시글 전체 조회할 때 게시글 마다 좋아요 수도 함께 기재하려고 하면 게시글 조회 할 때 마다 articleId에 맞는 좋아요 수 정보도 함께 필요하잖아요?현재 게시글 서버와 좋아요 서버가 다른 환경을 고려할 때 그러면 게시글 조회할 때 마다 좋아요 서버로의 api요청이 불가피할 거 같은데 이 경우 조회 성능이 당연히 안좋게 나올 수 밖에 없다고 생각합니다. 비정규화로 좋아요수를 게시글 테이블에 붙여서 단일 서버로의 요청을 만들어줄려고 해도 말씀하신 한계 때문에 안될 거 같구요.만약 게시글 전체 조회 시에 게시글과 게시글의 좋아요수가 반드시 제공되어야 한다면 제가 생각한 성능 저하 포인트가 타당한가요? 만약 타당하다면 어떻게 개선할 수 있을까요? 인기게시글만 따로 추려서 레디스로 메모리를 활용해야할까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
안녕하십니까! 오류가 났습니다.. 도와주세요 ㅜㅜ
다 정상적으로 동작하는데 이름 수정 로직이 제대로 동작하지 않고 서버 내부 오류라는 메시지가 자꾸 출력됩니다.제가 혼자 해결해보려고 해보았는데 Hibernate가 id로 조회한 결과가 없어서 Optional이 비어서 orElseThrow가 예외를 던진거라고 하는데요... Postman 이용해서 제 실제 DB에 있는 데이터 값으로 전송해도 sql은 실행이 되는데 뭐가 문제인지 잘 모르겠습니다 ㅜㅜ도와주세요 ㅜㅜㅜㅜ
-
미해결코드로 배우는 React 19 with 스프링부트 API서버
tbl_todo 질문입니다
강의 12분 55초에malldb로 들어가서 tbl_todo가 떠야하는데 저는 없네요그래서 한참 이것저것 찾아보니까 tbl_todo가root/apidb/에 있네요.어디가 잘못된건가요?ㅜㅜ