묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨손에 익는 Next.js - 공식 문서 훑어보기
하이드레이션 질문 드립니다
CSR에서 비어있는 HTML을 파싱할 때 id="root" 엘리먼트를 만나면 리액트 앱을 마운트(JS 실행)하는 것과SSR에서 서버에서 pre-render되어 생성된 HTML에 JS에 연결하는 과정인 하이드레이션은 어떤 차이가 있는건가요? CSR에서 비어있는 HTML에 JS를 연결해서 실행시키는 것도 하이드레이션 아닌가? 하는 생각이 들었는데비어있는 HTML과 서버에서 렌더링된 HTML의 데이터 존재 여부에 따라 다른건지,아니면 CSR도 하이드레이션 과정을 수행하는지 궁금합니다.
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
캐싱 관련 질문 드립니다.
선생님 안녕하세요.MongoDB에 이어 infra 관련 강의도 잘 수강하고 있습니다.캐싱 관련되어 선생님 의견이 궁금해 질문드립니다. 백그라운드현재 MongoDB + Nest.JS를 사용해 WAS를 구축한 상태입니다.도큐먼트 안에 서브 도큐먼트들이 array 형태로 들어가도록 Model을 설계했는데요, 서브 도큐먼트를 가져올 때 aggregation을 사용해 페이지네이션을 적용했습니다.(처음에 설계 시, 잘 못 생각해 이러한 설계를 하긴 했습니다..)aggregation에는 성능 문제가 따라올 위험이 있을까봐 해당 GET 요청 컨트롤러에는 캐싱을 적용했습니다.문제가 되는 부분은 캐싱처리로 인한 코드의 가독성 저하 입니다.WAS안에서 GET 요청 시 캐싱을 적용하고, POST, PUT, PATCH 요청시에는 캐싱을 지우고 있는데, 비즈니스 로직안에서 이를 처리하다보니 코드의 가독성이 급격히 떨어지더라고요. 제가 생각한 해결 방안이를 해결하기 위해 event emitter를 사용해 캐싱을 비즈니스 로직으로부터 떼어낼까 고민했습니다.다만 이 해결방안은 캐싱처리하는 로직 자체가 하나의 WAS에 존재하고 있어 추후에 또 비슷한 문제가 발생하지 않을까 생각이 들더라고요. 질문선생님께서는 이러한 문제 발생 시 캐싱 처리는 프록시 서버를 띄워서 앞단에서 미리 처리를 하시는지... 아니면 또 다른 좋은 방식으로 설계를 하시는지 궁금해서 질문드립니다.
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
Transform이 적용이 안됩니다.
Transform을 적용해도 path값에 public/posts값이 붙지 않은 채로 계속 나옵니다.main.ts파일에 위와 같이 적용을 해도 안되는데 혹시 원인을 알 수 있나요?
-
미해결스프링 핵심 원리 - 기본편
현재 파일만 컴파일 하고 싶은데 다른 파일도 컴파일 돼서 오류가 납니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]현재 파일만 컴파일 하고 싶은데 아직 고치지 않은 다른 파일도 컴파일 돼서 오류가 나서 실행이 안되는데 방법이 있을까요?
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
create certificate 할때요..!
Attempting to validate your cerificate... 상태에서 아무리 기다려도 Valid 상태로 넘어가지지가 않습니다.이런경우는 어떤 경우인가요?
-
미해결그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
배열 출력
만약 int []A = { 1, 3, 9, 4 } 가 있을때,A={ 1, 3, 9 ,4 } 를 출력하고 싶으면 어떻게 해야 출력할 수 있나요? 혹은 for 중첩문의 반복 조건을 통해 선택정렬을 해서( 1, 9) 와 ( 3, 4 ) 에 해당하는 것만 출력하고 싶을때는 어떻게 해야 출력할 수 있나요? 그리고 그건 어디에서 배울 수 있나요?
-
해결됨개발자를 위한 쉬운 도커
leafy-front end 부분 여쭤볼게 있습니다.
안녕하세요 docker 수업 잘 듣고 있습니다.다름이 아니라 frontend 부분 빌드한 후 /app/dist -> /usr/share/nginx/html하게 되면 404 error 가 뜨게 됩니다.conf file 에서 경로를 못찾는게 아닐까 합니다...그래서 확인해본 봐로는 /etc/nginx/nginx.confhttp { server { listen 80; # 삭제 가능 server_name localhost; #삭제 가능 location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $uri/ /index.html; } }을 삽입 하면 잘 됩니다. 혹시 강의 하신 내용에서는 이부분이 없느데도 잘 작동하는데 이유를 알 수 있을까 해서 질문 드립니다.감사합니다.
-
미해결김영한의 실전 자바 - 기본편
문제 2번 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]여기에 질문 내용을 남겨주세요.문제 2번에 public void addItem(Item item) << Item item이 메서드의 매개변수인가요? 객체 배열에 참조값을 가져온건가요? if문 리턴끝나고 나오는 items[itemCount] 이거는 0번째 배열부터 1개씩 증가하는건 이해했는데 items[itemCount] = item; 에서 이해가 잘안가요 item은 왜 대입시키는건가요 참조값을 주기위해서인가요? 객체배열과 연결하기위해 참조값을 주는건가요? 제가 이해력이좀 낮아서
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
배열 출력
만약 int []A = { 1, 3, 9, 4 } 가 있을때, A={ 1, 3, 9 ,4 } 를 출력하고 싶으면 어떻게 해야 출력할 수 있나요? 혹은 for 중첩문의 반복 조건을 통해 선택정렬을 해서( 1, 9) 와 ( 3, 4 ) 에 해당하는 것만 출력하고 싶을때는 어떻게 해야 출력할 수 있나요? 그리고 그건 어디에서 배울 수 있나요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
테이블이 생성되지 않습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의를 따라가며 테이블을 생성하려고 했습니다.하지만, 강사님의 화면과는 다르게 create sql문이 출력되지 않으며 , 테이블이 생성되지도 않습니다.1.member entity 코드 작성2.h2 실행3.JpaMian 실행 이 순서대로 진행을 했는데 테이블이 생성되지 않는 원인이 무엇인가요?? 답변 부탁드립니다 !
-
해결됨ElasticSearch Essential
4강 14분51초 질문 있습니다!
인덱스 템플릿 예제를 보면 프라이머리 샤드3개, 레플리카 샤드 6개로 구성하셨는데요. 하루에 30GB 정도 쌓이는 로그를 인덱스에 저장해야하는데, 만약 클러스터 내 1개의 노드만 존재한다면, 프라이머리, 레플리카 샤드를 몇 개씩 배치하는게 좋을까요?참고로 로그는 저장하는 용도입니다. 키바나에서만 조회합니다!만약 하나의 클러스터 내 10개의 노드가 존재한다면, 총 10개의 EC2가 꼭 필요할까요? 하나의 EC2에서 2~3개의 노드를 만들 수 있을까요? 만들 수 있다면 이게 올바른 설계인지도 궁금합니다!6개월 정도 로그를 쌓으면 약 180개의 인덱스가 일자별로 생성이 될텐데, 인덱스의 개수가 100개가 넘어가면 자동으로 가장 오래된 인덱스부터 삭제할 수 있는 방법이 있을까요? 질문이 많네요ㅠㅠ
-
해결됨React + GPT API로 AI회고록 서비스 개발 (원데이 클래스)
마크다운 이미지가 잘 작동안합니다.
제시해주신 방식대로는 마크다운으로 작성하는 이미지가 링크를 작성하기까지만 하고 나오지 않는 경우가 대부분입니다. 이유는 모르겠네요. 잠깐 나왔었는데.. 또 안나옵니다. 이유가 있을까요. 조건과 지시를 다양하게 걸었더니 제대로 답변을 못하네요. ^^; 특히 일기를 제멋대로 쓰는 부분이 있습니다. 어떤때는 내가쓴것처럼 잘 쓰는데 어떤때는 제멋대로 씁니다. ㅎㅎ 그래도 이런 시도를 해볼수 있어서 좋습니다.
-
미해결Airflow 마스터 클래스
Bind for 0.0.0.0:8080 failed: port is already allocated
아무것도 변경한게 없는데 아래 에러가 나옵니다Error response from daemon: driver failed programming external connectivity on endpointBind for 0.0.0.0:8080 failed: port is already allocated 컴퓨터를 재시작해도 나옵니다. 도커 데스크탑이 깔려있긴 하지만 종료한 상태입니다. 설마 도커 데스크탑 설치했다고 이러는 건 아니겠죠..?
-
해결됨홍정모의 따라하며 배우는 C언어
6분 54초경 질문
그냥 그렇나 보다 하고 지나칠뻔한 걸 한번 의심을 하니 문제를 놓을 수가 없게 되었습니다. 1.int ar1[2][3] = { {1, 2, 3}, {4, 5, 6} };int* pt;pt = &ar1[0][0];for (int i = 0; i < 6; ++i)printf("%d %d ", pt[i], *(pt + i)); 2.int arr[2][3] = { {1, 2, 3}, {4, 5, 6} };int* parr[2];parr[0] = arr[0];parr[1] = arr[1];for (int i = 0; i < 2; ++i)printf("%p %p ", parr[i], *(parr + i)); 둘 다 똑같이 출력을 했는데 1번 예제는 값이, 2번 예제는 주소가 출력 되는 이유그러니까 parr[i]가 주소를 출력하니 pt[i]도 주소를 출력 해야 할 것 같은데 값을 출력하는 이유가 궁금합니다.parr은 포인터의 배열이고 pt는 포인터라서?parr의 자료형은 int (*)[3]이고 pt의 자료형은 int*라서?뭔가 연관이 있을 텐데 저는 어떤 연관이 있는 건지 쉽사리 연결 지을 수가 없더라구요.꼭 알려주셨으면 합니다. 항상 좋은 답변 감사합니다.
-
미해결홍정모의 따라하며 배우는 C언어
릴리즈모드 디버그모드 scnaf 오류
릴리즈 모드가 아니라 디버그 모드를 사용해서 i와j의 합을 볼려했는데 왜 디버그 모드상태에서 scanf를 사용하면 오류가 나나요??
-
해결됨홍정모의 따라하며 배우는 C언어
14.24강 09:54 질문이 있습니다.
앞에 말씀하신 부분 중 함수 실행의 결과로 배열을 반환할 수 없다고 하셨었는데 그러면 09:54에서 식별자 x2는 함수 포인터 배열의 포인터가 되는건가요???int(*x2[10])(int);
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
@JsonIgnore 관련 ClassNotFoundException 발생
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.@JsonIgnore을 어느 클래스에 어디어디 붙여야 할까요?"http://localhost:8080/api/v1/simple-orders"api 테스트를 해보니 아래와 같은 에러가 나서 질문드립니다 2024-01-25T22:37:28.102+09:00 DEBUG 32028 --- [nio-8080-exec-1] org.hibernate.SQL : select o1_0.order_id, o1_0.delivery_id, o1_0.member_id, o1_0.order_date, o1_0.status from orders o1_0 join member m1_0 on m1_0.member_id=o1_0.member_id fetch first ? rows only2024-01-25T22:37:28.226+09:00 ERROR 32028 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed: java.lang.NoClassDefFoundError: javax/persistence/Transient] with root causejava.lang.ClassNotFoundException: javax.persistence.Transient at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) ~[na:na] at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[na:na]2024-01-25T22:37:28.277+09:00 ERROR 32028 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost] : Exception Processing ErrorPage[errorCode=0, location=/error]jakarta.servlet.ServletException: Handler dispatch failed: java.lang.NoClassDefFoundError: javax/persistence/Transient
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
list와 arraylist
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]public List<Member> findAll() { return new ArrayList<Member>(store.values());}에서 method의 return type을 ArrayList의 상위 인터페이스인 List로 지정한 이유가 궁금합니다. MemeberRepository interface가 재사용될 때, list를 implement하는 다른 class들도 반환 type으로 사용할 수 있게 하기 위한 이유인가요? 특별한 이유가 있는 것인지 궁금합니다.
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
어빌리티 태스크에서 GetWorld() 얻어올 때 어빌리티에서 가져오는 것
바로 GetWorld() 하는 것과 Ability->GetWorld() 하는 것이 어떤 차이가 있나요?World라는 것이 자신이 생성되어 소속되어있는 레벨의 월드 데이터로만 알고있는데, 월드데이터가 오브젝트마다 다를 수가 있는 건가요?
-
미해결
해커랭크 Top earners
해커랭크 top earners 문제 질문입니다. 강의에서 풀어주신 코드입니다.SELECT salary * months AS earnings, COUNT(* )FROM EmployeeGROUP BY earningsORDER BY earnings DESCLIMIT 1;108064 7 제가 따로 혼자 풀어보다가 몇가지 궁금한 점이 생겼는데요.SELECT (months * salary) AS earnings, COUNT(*)FROM EmployeeGROUP BY (months * salary) AS earningsORDER BY (months * salary) AS earnings DESCLIMIT 1 ;이 코드는 왜 안되는 걸까요? LIMIT 다음에 COUNT(*) 코드가 실행되서 그런건가요? GROUP BY 명령어 바로 뒤에는 (months * salary) AS earnings 와 같은 계산식이 들어가면 안되나요? 3.그리고 제가 이전에 이 문제 관련해서SELECT MAX(salary * months AS earnings) , COUNT(*)FROM EmployeeGROUP BY earnings; 는 왜 안되는지 질문을 한적이 있었습니다.그런데 답변에서 SELECT MAX(months * salary) AS max_earnings, COUNT(*)FROM Employee이렇게 코드를 바꾸면 실행될거라고 답변이 달렸는데요.코드 복사해서 실행해보니 정답이 나오지 않습니다. SELECT salary * months AS earnings, COUNT(* )FROM EmployeeGROUP BY earningsORDER BY earnings DESCLIMIT 1;마지막으로 강사님께서 풀어주신 코드 중 SELECT salary * months AS earnings -> FROM -> GROUP BY -> ORDER BY -> LIMIT -> COUNT 순으로 명령어가 읽히는게 맞죠?순서가 너무 헷갈리네요...