묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실습으로 배우는 선착순 이벤트 시스템
수량 조절에 대한 질문이 있습니다.
안녕하세요! 먼저 강의 잘 들었습니다. 좋은 강의 만들어주셔서 감사합니다. 해당 강의에서 쿠폰 수량 조절을 Redis로 진행을 하는데 이에 대해 근본적으로 궁금한 점과 전체적으로 제가 이해한 것이 맞는지 여쭙고 싶습니다. 쿠폰 재고의 동시성을 싱글스레드 기반인 Redis를 통해 100개까지 생성해준다. -> 여기서 X-lock을 사용하는 비관적락을 사용해도 문제가 없지 않나요? Redis를 사용했을 때 장점은 직접적인 DB락을 걸지 않아 데드락이나 다른 위험을 방지할 수 있다는 것인가요?(강의에는 해당되지 않지만) 동시성 제어를 위해 비관적락, 낙관적락(x), Redis를 통한 수량제어 이렇게 해볼 수 있을 거 같은데 언제 Redis를 선택할지 감이 잘 오지 않습니다.강의에서 DB에 10,000개가 들어와서 서버 사용률이 높아졌는데, 결국 카프카로 보내 컨슈머들이 처리를 하게 된다면 똑같이 DB에는 10,000개의 부하가 오지 않나요? 단지 흐름 제어용이라고 보면 될까요? (카프카가 익숙하지 않습니다.)쿠폰의 재고가 아닌 만약 사용자가 상품을 구매할 때에도 해당 강의에 내용을 적용해볼 수 있을 것 같습니다.상품 구매할 때 중복 구매를 방지한다고 하면 Redis에 Set 키 값으로 [product:1(pid):member:1] 이런식으로 하면 마찬가지로 실수로 같은 사용자의 중복 결제도 막아볼 수 있을 것 같습니다! (의도라면 시간을 같이 넣어 조절해도 될 거 같아요) 잘 이해한게 맞을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
복사붙여넣기 어디에 하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]7분28초에 어마어마한 코드를 복사붙여넣기를 한다고 했는데 어디에다가 붙여놓는걸까요?
-
해결됨Next + React Query로 SNS 서비스 만들기
memurai 설치가 안됩니다..
안녕하세요 제로초님 postgreSQL까지는 설치하고 데이터베이스 설정도 되었는데memurai 는 아래 오류가 뜨면서 설치부터 안됩니다.해결방법을 찾지 못해서 질문 드립니다..
-
미해결엑셀 기초에서 실무까지
강의가 안나와요
10 섹션의 아홉번째 강의가 안뜹니다.그래서 수료가 안되는거같은데 확인 부탁드립니다.
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
DB data 재활용 관련 질문
데이터 베이스를 사용하면서 궁금한점이postgres-data폴더에 db관련 정보들이 저장되는것 같은데entity의 변경과 같은 이유로 초기화를 해야 할때 초기화 후 기존에 저장했던 부분을 살릴 수 있는 방법이없을까요??(ex postgres-data폴더의 어떤 파일을 살려라 등)
-
해결됨실습으로 손에 잡히는 SQLD의 정석(2과목)
안녕하세요
delete cascade로 설정된 T와 S테이블에서T테이블의 C 컬럼이 삭제 되면S테이블의 C컬럼의 1과 매칭되어서 연쇄 삭제되는건 이해했는데,S테이블의 B컬럼은 남아있을거라고 생각했었는데, C컬럼을 삭제하면 다른 컬럼(S테이블의 B)도 같이 삭제되나요?
-
해결됨배달앱 클론코딩 [with React Native]
환경세팅 및 버전 관련질문입니다.(react-native init 명령어 관련 등)
node: nvm으로 여러 node버전을 use명령어로 바꿔가면서 프로젝트마다 버전관리를 하면서 사용할 수 있을 것 같습니다.2. java는 17 버전을 사용합니다 (rn 0.72,0.73 버전과 함께사용할수 있다는 다른분의 질문답변을 봤습니다. )3. react-native를 0.72버전으로 시작하고 싶어서 아래의 명령어로 실행했습니다 -react-native라이브러리 설치E:\RN_PJ>npm i -g react-native E:\RN_PJ>react-native -v 13.6.9-해당 라이브러리로 프로젝트 생성E:\RN_PJ>npx react-native init FoodDeliveryApp --version 0.72 --template react-native-template-typescript프로젝트 생성하는 명령어에서의 에러메세지- 요약하면 version이랑 template이랑 함께 사용할수 없는 명령어라는 내용같습니다. ⚠️ The `init` command is deprecated. The behavior will be changed on 2024. 12. 31. (131 days). - Switch to npx @react-native-community/cli init for the identical behavior. - Refer to the documentation for information about alternative tools: https://reactnative.dev/docs/getting-started Running: npx @react-native-community/cli init error Passing both "version" and "template" is not supported. The template you select determines the version of react-native used. Please use only one of these options, for example: --template react-native-template-typescript@x.y.z where x.y.z is the release of the template that contains the desired "react-native" version. Check the version tab of https://www.npmjs.com/package/react-native-template-typescript for available versions. info Run CLI with --verbose flag for more details.-chat gpt 는 아래의 명령어를 실행해보라는데 이렇게 시작해도되는지 잘 모르겠습니다. (...)npx react-native init FoodDeliveryApp --version 0.72.0 npx react-native init FoodDeliveryApp --template react-native-template-typescript@X.Y.Z 추가 참고 사항 및 질문사항)현재 node14, java17로 진행하고있는 프로젝트가 있어서java를 17버전으로 진행하려고 했습니다. JAVA_HOME을 17버전으로 잡아놔서... 프로젝트 왓다갔다 할 때마다 JAVA_HOME바꾸는 방법밖에는 모르겠어서 그렇게 하고싶지는 않아가지구... os가 windows인데 nvm처럼 java버전관리 할수있는게 없는것 같습니다... 보통 실무에서 java는 버전 관리를 어떻게 하나요? (도커같은 컨테이너로 프로젝트 별 환경관리를 하지 않을까하는 추측을 하고있습니다.) 따로 관리하는 방법이 있는지 궁금합니다.)
-
미해결Vue 3 중급 - Composition API
volar 확장 기능이 현재 미지원으로 뜹니다.
vue - official은 설치되어 있는데 강의 내용중 TodoHeader 자동 import가 먹지 않습니다. 가능한 다른 루트가 있는 걸까요?
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "기본편"
watch의 인자로 ref 변수 사용할 때 .value를 붙이지 않는 이유
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요!<script> 에서 반응형 데이터를 사용할 때 .value를 통해 접근하고 있습니다.그런데 watch의 첫번째 인자로서 이를 사용할 때는 .value를 사용하지 않는 것이 희안해보입니다.이렇게 사용하는 논리적인 이유가 있을까요?아니면 그냥 그런 것이다! 하고 지나가면 되는 문제일까요!
-
미해결한 입 크기로 잘라먹는 Next.js(v15)
getLayout을 왜 사용하는 건가요?? (5:20)
이번 강의에서 페이지별 레이아웃을 사용할 때, 레이아웃이 필요한 컴포넌트에 getLayout 메소드를 추가해서 사용합니다// 1 export default function Home() { return <h1 className={style.h1}>인덱스</h1>; } Home.getLayout = (page: ReactNode) => { return <SearchableLayout>{page}</SearchableLayout>; };// 2 export default function Home() { return <SearchableLayout> <h1 className={style.h1}>인덱스</h1> </SearchableLayout>; }// _app.tsx // a type NextPageWithLayout = NextPage & { getLayout?: (page: ReactNode) => ReactNode; }; export default function App({ Component, pageProps, }: AppProps & { Component: NextPageWithLayout }) { const getLayout = Component.getLayout ?? ((page: ReactNode) => page); return <GlobalLayout>{getLayout(<Component {...pageProps} />)}</GlobalLayout>; } // b export default function App({ Component, pageProps, }: AppProps) { return <GlobalLayout><Component {...pageProps} /></GlobalLayout>; } 2번째 코드처럼 사용하면 app 컴포넌트(b)와 레이아웃이 필요한 컴포넌트(2) 둘 다 더 짧게 사용할 수 있을 거 같은데, getLayout 메소드를 사용해야 하는건지 질문드립니다 그냥 표준처럼 사용 되는 건지??페이지 컴포넌트와 레이아웃 컴포넌트를 분리하기 위해서인지??레이아웃이 필요한 컴포넌트에서 레이아웃을 부모 컴포넌트로 사용하면 해당 컴포넌트간 상태 유지 관련 문제가 있는건지??질문 드립니다
-
미해결[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
제이쿼리로 슬라이드 작성 시, .css({left : 0}) 이게 왜 들어가는지 이해가 되지 않습니다.
.css({left : 0 })를 주석 처리해도 정상적으로 동작하는데굳이 넣으신 이유를 알 수 있나요?아니면 저 부분을 빼면 이상이 생긴다는 것을 보려면 코드를 어떻게 작성하면 좋을까요?
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
어떤 객체가 이벤트를 발생시키는지
여러 챕터에서 객체의 on 메서드를 사용하는 코드가 자주 보여서 개념에 대해 알아보았습니다.const fs = require("fs"); console.log("before:", process.memoryUsage().rss); // 메모리 체크 // 스트림 방식으로 파일 읽고 보내기 const readStream = fs.createReadStream("./big.txt"); const writeStream = fs.createWriteStream("./big3.txt"); readStream.pipe(writeStream); readStream.on("end", () => { console.log("stream: ", process.memoryUsage().rss); });그런데 이렇게 이벤트가 발생하는 객체의 종류를 모두 외우고 있어야 하나요? 아니면 이 객체가 이벤트를 발생시키는지 예상(?), 판단할 수 있는 기준이 있나요?
-
해결됨2025 언리얼 공인강사 – UE5 스파르타 클래스: 심화편
인터페이스 관련
강의 잘 보고있습니다. 강의 내용에 인터페이스에 대한 장점이 나타나지 않는 것 같아요,,해당 내용은 충분히 각 BP 액터에서 오버랩될때마다 print string으로 구현하면 되는 기능으로 보이네요.예시를 단순히 print string 으로 하다보니 굳이 써야하나? 하는 느낌이 드네요.. 받아온 매개변수 damage에 대한 활용도 없다보니 더 그런 것 같아요.. 단순한 사용법만 안내하고 왜 쓰는지에 대한 내용이 보충되면 더 좋을 것 같습니다. 구글링하면 내용은 나오겠지만 강의의 퀄리티가 더 높아지길 바라면서 문의 남깁니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
0주차 [필수강의] split 함수 수업자료 다운로드 관련 문의
0주차 [필수강의] split 함수 질문 있습니다 해당 강의를 모바일에서보면수업자료아이콘이 나타나있습니다 C++알고리즘 교안 처럼 파일만 있는게 아니라 동영상과 함께있어 다운로드 하지못하는건지 모바일에서도 pc에서도 수업자료를 받을 수 없어서 질문드립니다 해당 수업자료 아이콘은 따로 파일이 첨부되어있다는 표시일까요?맞다면 어떻게 다운로드 할 수있는지 문의드립니다
-
미해결
예제실습파일
예제실습파일은 어디서 다운받아서 혼자할수 있는건가요?
-
해결됨한 입 크기로 잘라먹는 타입스크립트(TypeScript)
섹션 11 질문있습니다 !
npx create-react-app으로 리액트를 실행시켰는데npm create vite@latest로 타입스크립트 실행시키면 안되나요 ??둘의 큰 차이를 잘 모르겠습니다 ㅠㅠ
-
해결됨PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
잘 된 레포트의 예시가 혹시 있을까요?
말씀주신대로 잘 된 레포트를 보는게 업무엔 더 도움이 될것 같은데 혹시 참고하시는 레포트의 예시가 있을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
코드 복사 붙여넣기가 너무 많아서 어디꺼를 가지고 와야하는데 좀더 설명해주세요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]순수 JDBC 를 공부 중인데 너무 복사붙여넣기가 많고 화면을 멈춰도 빨라요...어디꺼를 가지고 와야 붙여넣기를 해도 오류가 안생길까요?ㅜㅜpackage com.example.springpractice.repository; import com.example.springpractice.domain.Member; import org.springframework.jdbc.datasource.DataSourceUtils; import javax.sql.DataSource; import java.sql.*; import java.util.ArrayList; import java.util.List; import java.util.Optional; import static java.sql.DriverManager.getConnection; import static org.apache.tomcat.util.descriptor.InputSourceUtil.close; public class JdbcMemberRepository implements MemberRepository { private final DataSource dataSource; public JdbcMemberRepository(DataSource dataSource) { this.dataSource = dataSource; } //저장 @Override public Member save(Member member) { String sql = "insert into member(name) values(?)"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); pstmt.setString(1, member.getName()); pstmt.executeUpdate(); rs = pstmt.getGeneratedKeys(); if (rs.next()) { member.setId(rs.getLong(1)); } else { throw new SQLException("id 조회 실패"); } return member; } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } @Override public Optional<Member> findById(Long id) { String sql = "select * from member where id = ?"; Connection conn = null; } @Override public Optional<Member> findByName(String name) { return Optional.empty(); } @Override public List<Member> findAll() { return List.of(); } }
-
해결됨김영한의 실전 자바 - 중급 1편
교안 오타수정 2건 제안입니다!
안녕하세요! 교안 수정과 관련해서 제의를 두 개 하고 싶은데 혹시 이곳에 글을 남기면 되는 것일까요? 교안 3. String 클래스 19p. 아래쪽"결과적으로 컴퓨터의 CPU, 메모리를 자원을 더 많이 사용하게 된다."에서 "메모리를 자원을" >> "메모리 자원을" 교안 3. String 클래스 24p. 아래쪽"StringBuilder는 멀티 쓰레드에 상황에 안전하지 않지만 동기화 오버헤드가 없으므로 속도가 빠르다."에서 "멀티 쓰레드에 상황에" >> "멀티 쓰레드 상황에" 이렇게 총 두 건 오타 수정 제안드리고 싶습니다! 항상 감사합니다 :)
-
미해결[하루 10분|C++] 누구나 쉽게 배우는 C++ 프로그래밍 입문
질문있습니다.
cout << "입력하신 동물 이름은 " << animal << "이고, 그 주소는 " << (int*)animal << " 입니다." << endl; cout << "복사된 동물 이름은 " << ps << "이고, 그 주소는 " << (int*)ps << " 입니다." << endl;이 코드에서 animal하고 ps에 pandas가 그대로 출력된 이유를 모르겠습니다.