안녕하세요, 좋은 강의 제공해주셔서 감사드립니다. 실전 문제풀이8의 문제8번에 대한 질문입니다. S3로 데이터를 저장하려면 애플리케이션 코드 변경이 필요하다는 설명이 있었는데, 이 부분에 대해서 조금 더 첨언해주실 수 있을까요? + EFS는 어떤 상황에서도 코드 변경이 필요없는 건가요? 잘 부탁드립니다.
비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 현상은 다음과 같이 나오고 있습니다. secret.js에는 다음과 같이 잘 들어가있습니다. 저의 git에도 database라는 js파일이 존재합니다. 왜그럴까요! 에러메세지 첨부합니다. root@ip-172-31-85-206:/home/ubuntu/FoodMap/back# node index.js internal/modules/cjs/loader.js:818 throw err; ^ Error: Cannot find module '../../back/config/database' Require stack: - /home/ubuntu/FoodMap/back/src/controllers/indexController.js - /home/ubuntu/FoodMap/back/src/routes/indexRoute.js - /home/ubuntu/FoodMap/back/config/express.js - /home/ubuntu/FoodMap/back/index.js at Function.Module._resolveFilename (internal/modules/cjs/loader.js:815:15) at Function.Module._load (internal/modules/cjs/loader.js:667:27) at Module.require (internal/modules/cjs/loader.js:887:19) at require (internal/modules/cjs/helpers.js:74:18) at Object.<anonymous> (/home/ubuntu/FoodMap/back/src/controllers/indexController.js:1:18) at Module._compile (internal/modules/cjs/loader.js:999:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10) at Module.load (internal/modules/cjs/loader.js:863:32) at Function.Module._load (internal/modules/cjs/loader.js:708:14) at Module.require (internal/modules/cjs/loader.js:887:19) { code: 'MODULE_NOT_FOUND', requireStack: [ '/home/ubuntu/FoodMap/back/src/controllers/indexController.js', '/home/ubuntu/FoodMap/back/src/routes/indexRoute.js', '/home/ubuntu/FoodMap/back/config/express.js', '/home/ubuntu/FoodMap/back/index.js' ] }
선생님 안녕하세요. 이번 강의에서 사용된 Promise.all이 뭔지 몰라서 찾아보니 async-await를 사용하면 비동기 동작의 상태가 완료될 때까지 기다린 후 다음 코드를 순차적으로 읽어나가다보니 이렇게 기다리는 시간을 개선하기 위해 Promise들을 병렬로 처리해 주는 것으로 확인됩니다. 근데 이번 강의에서 Promise.all을 빼고 이미지를 업로드해보면 아래의 사진처럼 네트워크의 preview에서 아무 값도 담기지 않게 됩니다. Promise.all이 처리속도를 개선해 주기 위한 기능이라면 Promise.all을 사용하지 않아도 우선 값은 담겨야 하는게 아닐까 하는 생각이 드는데 왜 값이 담기지 않게 되는지 궁금합니다.
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
M1 Macbook Pro입니다. brew로 mysql 설치 후 mysql.server start를 하면 아래 메시지가 반겨주네요. ERROR! The server quit without updating PID file (/opt/homebrew/var/mysql/Wons-MacBook-Pro.local.pid). 어찌해야 될까요? 설 연휴에 죄송합니다^^
안녕하세요 선생님. Querydsl 설정하는 부분에서 질문이 있습니다. 호돌맨님 강의영상처럼 똑같이 보고 따라했는데 제꺼에선 Q클래스를 인식하지를 못 하더라구요. 제가 기존에 영한님 강의에 익숙해져서 빌드 도구를 gradle이 아니라 인텔리제이로 해놨었거든요. 그래서 혹시 몰라 gradle로 바꾸니 이제 QClass가 잘 생성이 되네요. 혹시 이 부분은 어느 키워드로 검색을 해야할까요..?
우선 수업 잘 듣고 있습니다 호돌맨님! 많이 배우고 있어요 ㅎㅎ 제목에서와 같이 PostCreate 부분에서 기본 생성자에 관해 질문을 드립니다. // @Setter @Getter @NoArgsConstructor // TODO: 왜 이게 꼭 있어야 하는 것일까? public class PostCreateDto { @NotBlank(message = "타이틀을 입력해주세요.") private String title; @NotBlank(message = "내용을 입력해주세요.") private String content; @Builder public PostCreateDto(String title, String content) { this.title = title; this.content = content; } } 우선 이건 제 코드입니다. 보시면 제 코드에는 @NoArgsConstructor 어노테이션이 있는데요. 이 부분이 없으면 제 PostControllerTest에서는 테스트 실패가 뜨더라구요. 에러 메시지는 다음과 같습니다. Caused by: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of com.blog.request.PostCreateDto (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator) 에러메시지를 읽어보니 생성자가 없다는 문제 같아서 @NoArgsConstructor 어노테이션을 붙여보니 정상적으로 작동을 하더군요. 이 부분이 궁금해서 찾아보니 RequestBody로 넘어오는 데이터를 맵핑할 때 Jackson의 ObjectMapper가 사용되는데 이게 RequestBody를 생성할 때, DTO가 Property기반이 아니거나 Delegate를 한 상태가 아니라면 기본 생성자로 생성한다 라고 나와있네요. ( https://velog.io/@conatuseus/RequestBody%EC%97%90-%EC%99%9C-%EA%B8%B0%EB%B3%B8-%EC%83%9D%EC%84%B1%EC%9E%90%EB%8A%94-%ED%95%84%EC%9A%94%ED%95%98%EA%B3%A0-Setter%EB%8A%94-%ED%95%84%EC%9A%94-%EC%97%86%EC%9D%84%EA%B9%8C-3-idnrafiw ) 그리고 바인딩할 때 Setter가 없이도 자바 리플렉션을 통해서 DTO에 값이 들어간다고 하는 것도 이번에 알게 됐네요. 그래서 Setter를 지우고 Getter랑 @NoArgsConstructor 어노테이션만 붙이고 테스트를 돌려보니 통과가 잘 됩니다. 그런데 호돌맨님이 올려주신 코드를 보니 PostCreate 부분에 기본생성자가 없더라구요. 그런데도 테스트통과가 잘 되는 것을 보니까 신기하네요. 어떻게 그게 가능한 것인지 설명해주실 수 있나요?
마지막 오토스케일링부분을 지금 현재 진행중인데 기존에 설정해놓은 인스턴스를 모두 중지나 삭제하고나서 오토스켈링 프라이빗 AMI로 인스턴스 올려서 진행하는건 지금 현재 아키텍처의 구성을 중간에 날려버리는게 아닌가 싶어서요 강의듣는게 좋앗던건 아키텍처를 구성하는것에 실습과 이론을 배우고싶어서 진행했는데 내용은 전반적으로 너무 좋은데 기존에것이 없어져서 실제로 처음에 보여진 아키텍처에서 프라이빗 서브넷 부분만 남아 있는데 기존 퍼블릭 부분도 다시 살려서 연동 할수 있는 부분 가이드 부탁 드립니다.
public-ec2-a1 인스턴스 생성 후 강의 대로 PHP 작성하여 이미지를 만들어서 해당 이미지로 c1 인스턴스를 생성하여서 문제없이 유저 데이터 대로 httpd 도 실행중으로 확인되는데 index.php가 아닌 index.html로 만들어져 있고 해당 공유주신 파일이 아닌 그저 ip 주소만 텍스트로 나오는 페이지만 출력이 되는데.. 혹시 php 파일은 이미지화 해도 안넘어와 지나요? 선수 작업이 있는걸까요?
인스턴스 클릭 후 보안 탭에서 보안그룹 설정 을 바꿔줘야 합니다. 기본 설정이 인바운드 규칙에 TCP만 오픈되어있습니다. Actions 보안> 보안 그룹 id 클릭 > >인바운드 규칙 > 인바운드 규칙 편집 > 규칙 추가 >HTTP, HTTPS 추가 : 소스 -> 사용자지정 : 내IP >규칙 저장