안녕하세요! 기존에 설명해주신 Orchestration 예제의 다이어그램과 호출 순서가 실습 코드랑 다른 것 같아서 질문드립니다. 다이어그램 : 오케스트레이터가 모두 요청/응답 받는 구조. 오케스트레이터 -> 2번 호출/응답 -> 오케스트레이터가 다시 3번 호출/응답 실습코드 : 오케스트레이터가 2번 서비스를 호출하고 2번 서비스가 3번 서비스를 호출하는 형태 질문 1) 위 2개의 내용이 다른 이유가 있을까요? + 오케스트레이션 패턴은 오케스트레이터가 모든 서비스를 호출하고, 다른 서비스는 오케스트레이터에 답변만 해주는 구조이고, 이 때문에 오케스트레이터가 SPOF가 될 수 있다고 이해했는데, 제가 잘못 이해한걸까요? 질문 2) 지금 예제에서는 REST API를 쓰는지, kafka 이벤트는 쓰는 여부 말고는 오케스트레이션/코레오그래피 모두 서비스 1 -> 2 -> 3 호출 하는 시나리오와 보상 처리를 하는 방법이 크게 차이가 없는 것 같습니다 (DLQ외) 예제를 보니까 헷갈리게 되는 것 같은데 제가 어떻게 이해하면 좋을까요? 감사합니다!
1. 현재 학습 진도 2-9부하테스트 2. 어려움을 겪는 부분 강의와 성능차이가 너무 많이나는데 이유가 궁금합니다. 3. 시도해보신 내용 해당 이미지는 제가 수행한 테스트인데, 로컬에서 진행한 동일 코드 인데도 성능차이가 너무 많이 나는데 뭐가 문제인걸까요? 추가적으로 성능개선코드를 적용전인 결과인점 참고부탁드립니다.
안녕하세요 강의 잘보고있어서 감사의 말씀 전하며 질문이 있어 글 남깁니다. 만약 비로그인도 어뷰징 방지 정책을 적용 한다했을때 실무에선 어떻게 처리하나요? IP나 쿠키, User-Agent 등을 활용한다고 하셨는데, IP 주소로 처리하기에는 공유망이나 VPN 같은 다양한 접근 방식도 있을 것 같고 User-Agent 나 브라우저쿠기같은경우는 브라우저에서 조작이 가능하기도하고 Pomsman 같은걸로 요청해서 User-Agent 값을 임의로 설정하는등과 같은 방법으로 집계될수도 있을것같은데 1. 그냥 일반적인 조회수만 집계만 하면되는 서비스에선 어떤식으로 처리하는지 궁금하고 만약 정말 빡세게 어뷰징을 처리한다고했을때 서버쪽에서 고유키값을 만들어서 로그인안한유저면 그 키값을 httponly 쿠키로 설정해서 고유키값이 있을때만 조회수가 집계되는 방법도 있을것 같은데 이런방식은 어떤지도 또 다른 괜찮은 방법이 있는지 궁금합니다.
The 10x AI-Native Developer: 회사에서 AI로 압도적 성과를 내는 법
안녕하세요. 회사에서도 AI 도구(Claude Code)를 적극적으로 사용하고 계신 것 같았는데, 보안 관점에서 AI 도구 사용에 대한 내부 가이드나 기준이 있는지 궁금합니다. 실제 딩코딩님 회사에서는 개발자들이 AI 도구를 어떤 범위까지 사용하도록 허용 하고 있는지, 그리고 현업에서 보안적으로 특히 고려해야 할 부분 은 무엇인지 알고 싶습니다. 예를 들어, 실제 민감한 고객 데이터 는 AI 도구에 질문하거나 제공하지 않도록 한다든지, 또는 credential이 포함된 코드 에서는 AI 도구 사용을 금지한다든지, 내부 시스템 아키텍처나 인프라 구조 는 AI에 제공하지 않도록 한다든지, 혹은 회사 내부의 특정 핵심 로직 은 민감해서 AI 사용을 제한한다든지요. 이처럼 AI 도구 사용과 관련해 내부적으로 정해진 기준이나 가이드라인이 있다면 , 어떤 식으로 운영되고 있는지 공유해주실 수 있을지 궁금합니다.
안녕하세요. 저는 5년차 프론트앤드 개발자입니다. 먼저 강의 너무 유익하게 잘 보고 있습니다. 😁 수업에서 진행하는 토이 프로젝트 외에도 별도도 업무에 적용하고자 하는 부분이 있어서 질문을 드려봅니다. 현재 작은 규모로 이미 개발이 완료된 프로젝트가 있으며, 향후 새로운 기능을 개발할 때 PRD, 정책정의서, 개발 실행계획서를 작성하고, 해당 문서를 바탕으로 백앤드와 프론트 개발을 진행, 리뷰 후에 배포까지의 전 과정을 claude를 이용해서 반자동화 하는게 목적입니다. (일정 부분은 사람이 개입) 이 과정에서 수많은 작업들이 있을텐데 각각의 작업들을 어떤 방식을 통해서 진행해야 할지 고민입니다. (sub-agent vs skill vs custom-command) 자연어로 기능 요구사항을 받아 PRD, 정책정의서 작성: (agent vs skill) PRD와 정책정의서를 바탕으로 로드맵 및 실행계획서 작성: (agent vs skill) 실행계획서를 바탕으로 이슈 생성하여 등록: (agent vs skill) + mcp 현재 변경사항을 분석하여, 같은 작업을 분류 및 커밋: (skill vs command) 위와 같은 사례들이 있을 때, 강사님의 경우 어떤 명확한 기준을 통해 '무엇'을 사용해야 겠다고 판단하시는지 궁금합니다. 강의를 보면 대략적으로는 알 것 같은데... 저 스스로에게 그것을 선택한 명확한 이유와 설명을 하지못하고 있네요.
우선, 제가 가려는 기업에서 원하는 것은 springboot(와 API 계약 이해), bootstrap, postman, WebSocket 사용 이해입니다. 이번년도 9월까지 개인 프로젝트 2개(각 1달)와 팀프로젝트 1개(2달)를 할 생각인데, springboot 학습과 동시에 프로젝트를 진행하기 전에 jdbc를 학습하는 것이 필수적인지 궁금합니다. 제 글에 부족한 부분이 있어서, 이해하기 어려우시면 답변으로 더 필요한 정보를 말씀해주시면 감사하겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 코드를 따라 치는 과정에서 아래와 같이 작성 했더니 BeanCreationException 이 발생하는 것을 확인 할 수 있었습니다. public void dbInit1(){ Member member = new Member(); member.setName("userA"); member.setAddress(new Address("서울", "1", "111")); em.persist(member); Book book = new Book(); book.setName("JPA1 BOOK"); book.setPrice(10000); book.setStockQuantity(100); em.persist(book); Book book2 = new Book(); book.setName("JPA2 BOOK"); book.setPrice(20000); book.setStockQuantity(100); // book2.setName("JPA2 BOOK"); // book2.setPrice(20000); // book2.setStockQuantity(100); em.persist(book2); OrderItem orderItem1 = OrderItem.createOrderItem(book, 10000, 1); OrderItem orderItem2 = OrderItem.createOrderItem(book2, 20000, 2); Delivery delivery = new Delivery(); delivery.setAddress(member.getAddress()); em.persist(delivery); Order order = Order.createOrder(member, delivery, orderItem1, orderItem2); em.persist(order); } 이때 위의 코드에서 주석 처리된 부분처럼 고쳤더니 정상적으로 코드가 실행되는 것을 확인했습니다. 그런데 이게 어떤 문제에서 오류가 발생한건지 정확히 알 수 없어 질문드립니다. 처음에는 book2의 값이 아무것도 없어서 null에 관한 엔터티 제약조건 관련해서 문제가 발생했나 생각해지만 notnull 같은 제약조건이 없었고 Book이 Item과 상속관계이고 싱글 테이블 전략을 사용해서 DTYPE 값이 book2 생성시 자동으로 생성 된다고 기억해서 특별히 값이 비었다고 생기는 오류가 아니라고 생각이 들었습니다. 결론적으로는 정확히 어떤 원인에서 발생한 문제인지 궁금해서 질문 남깁니다.
안녕하세요. 강사님. 이번에 plan시에 참고 링크를 직접 context로 넣어줬는데, 이전에 추가한 context7 mcp를 사용해도 되는건가요? context7 mcp 는 개발 단계에서 사용되나요? context7는 언제 사용하는지, 사용한다면 어떻게 사용할 수 있는지, 둘이 무슨 차이가 있는지 알려주시면 감사하겠습니다.
링크 타고 들어가서 수락하기 누르면 아래와 같이 뜨는데 어떻게해야할까요 학습 관련 질문을 남겨주세요. 구체적으로 적을수록 좋아요! 어떤 섹션, 몇 분 몇 초의 내용인지 어떤 부분이 이해가 안 되는지 어떤 에러가 발생했는지 (에러 메시지 전체) 본인이 시도해 본 방법 커뮤니티 질문 & 답변에 비슷한 내용이 있었는지 먼저 검색해보세요. 같은 질문이 이미 답변되었을 수 있습니다 검색으로 더 빠르게 해결할 수 있어요e
@Test @DisplayName("하위 댓글이 삭제되고, 삭제되지 않은 부모면, 하위 댓글만 삭제한다.") void deleteShouldDeleteChildrenOnlyIfNotDeletedParent() { // given Long articleId = 1L; Long commentId = 2L; Long parentCommentId = 1L; Comment comment = createComment(articleId, commentId, parentCommentId); given(comment.isRoot()).willReturn(false); Comment parentComment = mock(Comment.class); given(parentComment.getDeleted()).willReturn(false); given(commentRepository.findById(commentId)) .willReturn(Optional.of(comment)); given(commentRepository.countBy(articleId, commentId, 2L)).willReturn(1L); // 이 부분 given(commentRepository.findById(parentCommentId)) .willReturn(Optional.of(parentComment)); // ... 위 테스트에서 given(commentRepository.countBy(articleId, commentId, 2L)).willReturn(1L); 이 부분 때문에 질문을 드렸습니다. commentRepository.countBy() 에서 commentId = 2L 을 부모로 갖는 comment는 아무도 없으므로, 0L 을 반환하는 것이 옳다고 이해했는데, 강의에선 1L 을 반환하셨습니다! (물론 서비스 계층의 메서드에서 hasChildren() 의 판정 로직상 0L 과 1L 은 동일한 결과를 반환하므로 테스트 결과에는 영향을 주지 않는 것 같습니다.) 카운트 쿼리의 동작 부분을 제가 잘못 이해한 것인지 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 궁금한게 있는데요 선생님 강의중에서 데이터베이스 시리즈 꼭 자바를 알아야만 들을 수 있는건가요?백엔드가 파이썬으로 공부중인데 자바를 또 배워야할까요?
비트맵 자료 구조 강의를 수강하고, 해당 자료구조가 활용되는 상황에 대해 이해하지 못한 부분이 있어 질문 드립니다. 강의에서 말씀하신 비트맵을 사용하지 않았을 때 유저마다 고유한 키 값으로 string set으로 저장한다는 의미가 무엇인가요? 유저의 고유 키마다 쿠폰에 대한 set이 있고, 어떤 쿠폰이 발급됐는지 저장하는 구조인가요? 강의에서의 상황은 유저가 해당 쿠폰을 발급 받았는지를 식별하기 위한 상황인가요? 해당 정보를 DB가 아닌 레디스에 저장할 이유가 무엇인가요? 아니면 둘 다 저장하는 방식인가요? 만약 해당 쿠폰을 발급할 수 있는 기간이 일주일이면 일주일 동안 레디스에 해당 정보가 만료되지 않고 유지되어야 할까요? 해당 상황은 쿠폰 번호가 유저마다 다른가요, 다 같은 쿠폰 번호인가요? 만약 다른 쿠폰 번호라면 db에 따로 저장이 되어야 할까요? 감사합니다.
안녕하세요, 개발에 대해서 전혀 모르는 1인입니다. 바이브코딩을 배워보고 싶어서 열심히 따라하고 있는데, 본질적으로 문제점이 있어서 고견을 구하고자 질문드립니다. 강의에서 말해주신대로 플랜모드로 프로젝트의 기획, 아키텍트 등을 자세하게 요청했을 때 잘 모르는 사람 입장에서 그럴법하게 제시를 해줍니다. 문제는 이 기획이 제대로 된 건지, 아닌지 전혀 판단할 수가 없습니다. 초보자 입장에서 개발도 모르고 제대로 된 프로그램도 만들어보지 않았기 때문에 당연하다고 생각합니다. 시간이 지나면 당연히 개발에 대한 지식이 생기고, 프로젝트를 실패하고 성공하는 걸 반복하면서 실력이 늘겠지만 시행착오를 조금이라도 줄이고 싶습니다. 그래서 여러 AI한테 기획에 대한 피드백을 요청해서 그걸 토대로 판단하는 게 가장 괜찮을 것 같은데, 이 때 뭐라고 AI한테 지시해야 할 지가 궁금합니다. 이것도 AI 통해서 물어보면 되겠지만, 전문가로서 괜찮은 내용이나 정보가 있다면 알려주시면 정말 감사하겠습니다.