묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
apigateway 프로젝트 생성하고 실행시 Timout이출력 됩니다.
안녕하세요 강사님, 강의 영상 잘 보고 있습니다.first-service, second-service 둘다 실행 후에 apigateway-service 실행했습니다. 그런데 apigateway 쪽에서 연결 거부 당했다는 로그가 지속적으로 올라오네요 이유를 모르겠습니다. apigateway 의 application yml파일여기서 궁금한게 defaultZone 설정 해서, discoveryservice 프로젝트도 구동 시켜줬는데, 같은 에러로그가 지속 적으로 올라오네요..server: port: 8000 eureka: client: register-with-eureka: false fetch-registry: false service-url: defaultZone: http://localhost:8761/eureka spring: application: name: apigateway-service cloud: gateway: routes: - id: first-service uri: localhost:8081/first-service predicates: # ??? Path ??? first-service?? ?? uri? ?? - Path=/first-service/** - id: second-service uri: localhost:8082/second-service predicates: # ??? Path ??? second-service?? ?? uri? ?? - Path=/second-service/**콘솔 내용2024-10-07 20:39:53.214 WARN 2024 --- [OvbxrBtUd7XQ-87] o.s.a.r.l.SimpleMessageListenerContainer : Consumer raised exception, processing can restart if the connection factory supports it. Exception summary: org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused: no further information 2024-10-07 20:39:53.214 INFO 2024 --- [OvbxrBtUd7XQ-87] o.s.a.r.l.SimpleMessageListenerContainer : Restarting Consumer@4dca89d2: tags=[[]], channel=null, acknowledgeMode=AUTO local queue size=0 2024-10-07 20:39:53.215 INFO 2024 --- [OvbxrBtUd7XQ-88] o.s.a.r.c.CachingConnectionFactory : Attempting to connect to: [localhost:5672] 추가 예외2024-10-07 20:51:37.290 INFO 18012 --- [ main] c.c.c.ConfigServicePropertySourceLocator : Fetching config from server at : http://localhost:8888 2024-10-07 20:51:37.304 INFO 18012 --- [ main] c.c.c.ConfigServicePropertySourceLocator : Connect Timeout Exception on Url - http://localhost:8888. Will be trying the next url if available 2024-10-07 20:51:37.304 WARN 18012 --- [ main] c.c.c.ConfigServicePropertySourceLocator : Could not locate PropertySource: I/O error on GET request for "http://localhost:8888/apigateway-service/default": Connection refused: no further information; nested exception is java.net.ConnectException: Connection refused: no further information
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
안녕하세요 영상 시청 중 싱크가 맞지 않아 문의드립니다
안녕하세요 선생님 강의 잘 듣고 있습니다다름이 아니라 "컴퓨터와 문자 인코딩2" 영상부터 해당 섹션 정리 영상까지 강의를 듣는데에는 별로 문제가 없지만 영상과 소리 싱크가 맞지 않아 확인 부탁드립니다감사합니다
-
해결됨[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
cascade 자식이 부모삭제가 맞는건가요??
안녕하세요. 지금 typeORM에서 cascade를 보고있는데fk를 삭제하면 pk가 삭제하는게 일반적인 동작인지가 궁금합니다. User 엔티티에서 onDelete : "cascade"로 설정해두었고삭제는 부모에서 > 자식으로 연결되는 것으로 알고 있습니다. 근데 ProfileModel의 레코드가 삭제되도 Join한 레코드도 삭제되는데자식 > 부모로 삭제가 전파되는게 맞는건지 혼란이옵니다.강의에서도 profile을삭제하니 User레코드가 날아가버리는데 이 현상이 이해 되질않습니다. 부모>자식 cascade를 인한 연쇄 삭제 or update자삭>부모 cascade를 인한 삭제 불가 이게 기존 제 개념인데 제가 잘못알고있던건가 찾아보아도 정보가 좀 엉켜있네요.. typeORM만의 기능인지 SET NULL로 방지해야 하는건지 궁금합니다.
-
미해결
geth로 프라이빗 노드 구축 2번째
./nodestart.cmd 실행시 Fatal: Failed to read password file: open ./password.sec: The system cannot find the file specified. 라고 뜹니다
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
질문있습니다~~
질답을 잘 해주셔서 항상 감사하게 생각하고 있습니다 ㅎㅎㅎ최고!! 혹시 SQL기출문제 29:43초에 나온 정답 말고단가 > SUM(SELECT 단가 FROM 제품 WHERE 제조사='H')혹시 이렇게 해도 답이 되는걸까요..?? ㅜ
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
Dip, @transactional
안녕하세요! 강의를 듣고, 궁금증이 생겨서 찾아보던 중 명확한 답을 얻지 못해서 질문드립니다!.첫째로 DIP에 관련된 질문입니다.회원가입과 비밀번호 암호화 강의 중 "DTO를 서비스 계층으로 바로 넘기는 게 좋지 않다"고 하셔서 궁금증을 가지고 찾아보던 중에이 질문을 보고 관련 내용들을 찾아봤지만, 궁금증을 완전히 해결하지 못해서 질문드립니다.public class Auth ControllerAuthController { private final Auth ServiceAuthService auth ServiceauthService; private final ?AppConfig ?appConfig; @Post MappingPostMapping("/APIapi/auth/signup") public void signup(@Request BodyRequestBody Signup signup) { auth ServiceauthService. signup(signup).signup(signup); }}위와 같은 코드가 있을때 DIP를 지키면서 코딩한다면 단순히 Controller -> Service로 넘기기 위한 전달용 DTO를 만들어서 사용하시는지 궁금합니다.두 번째로 @transactional에 관한 질문입니다.데이터의 수정 및 변동이 있는 부분에는 @transactional을 붙이는 것이 좋다고 들어왔습니다. 그런데 강의의 코드에서는 붙인 부분과 안 붙인 부분이 나뉘는데 특별한 이유가 있을까요?또 한 readonly 속성은 데이터를 읽기만 하는 부분에서는 성능에 도움이 된다고 들었습니다.위의 내용들로 데이터의 변동이 일어나는 부분엔 @transactional을 붙이고, 읽어오기만 하는 부분에는 readonly 속성을 습관적으로 붙여왔는데 호돌맨님 께서는 @transactional을 사용하는 기준(?) 같은게 있으실까요?긴 질문 읽어주셔서 감사합니다 :)
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
findOne() 메소드 자료형
[질문 내용]MemberService 클래스에서 findOne 메소드를 정의할때 왜 자료형이 Optional<Member>여야 하는지 궁금합니다.
-
미해결Readable Code: 읽기 좋은 코드를 작성하는 사고법
강의에서 발생한 이슈에 관하여 (30:40)
안녕하세요. 30:40 강의 구간에서 발생한, 메서드 추출 이슈에 관하여, 원인이 무엇인지 궁금해서 질문 드립니다.발생한 문제는지뢰를 밟았을 때, 모든 지뢰 구간이 노출 된다거나,셀을 열었을 때 엉뚱한 곳도 같이 열리는 현상이 나타납니다.문제 발생 지점은 updateCellAt 메서드 사용 구간 입니다. private void initializeEmptyCells(CellPositions cellPositions) { List<CellPosition> positionList = cellPositions.getPositionList(); updateCellsAt(positionList, new EmptyCell()); } private void initializeLandMineCells(List<CellPosition> landMinePositionList) { updateCellsAt(landMinePositionList, new LandMineCell()); } ... private void updateCellsAt(List<CellPosition> positionList, Cell cell) { for (CellPosition position : positionList) { updateCellAt(position, cell); } } 상위 호출 부분으로 넘어가서,제 생각에 initializeEmptyCells 와 initializeLandMineCells 메서드 호출로 넘기는 인자가, 공유될 대상이었나 라고 생각해볼 수 있었습니다.cellPositions 나 landMinePositionList 모두 새로운 컬렉션으로 리턴되어서, 공유되지 않다고 생각되었습니다. public void initializeGame() { CellPositions cellPositions = CellPositions.from(board); initializeEmptyCells(cellPositions); List<CellPosition> landMinePositionList = cellPositions.extractRandomPositions(landMineCount); initializeLandMineCells(landMinePositionList); ... }그러면 어느 부분이 메서드 추출로 인해, 공유될 대상이 발생한 원인이었나가 궁금합니다.
-
해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
bmi 계산기 질문있습니다.
bmi 계산기 부분에서 display함수 안에 let group; 이렇게 변수 선언만 해주는 이유가 뭔가요? 조금 쉽게 설명부탁드리겠습니다.
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
가상메모리 개념에 대해서
강사님의 가상메모리 강의를 듣고, 가상메모리는 무엇인가에 대해 대략적인 내용을 학습할 수 있었습니다. 이에 제가 이해한 개념이 올바른 내용인지 확인 부탁드리겠습니다. 최초에 저는 가상메모리에 대해 이해가지 않았던 부분이 있었습니다. 가상메모리는 실제 메모리보다 더 크게 보이게하는 기술이라는 맥락으로 설명을 주셨던 거 같습니다. 여기서 저는, "그러면 그 가상메모리는 어디에서 오는 건데?" 였습니다. 메모리라 하면, 주기억장치든 보조기억장치든 그 장치들이 실존하는 것이며, 용량도 정해져 있는데, 도대체 이 가상메모리는 어떤 메모리를 기반으로 제공되는 것인가. 이러한 생각이 드니, 어떻게 이해하려고 해도 쉽게 이해가 가지 않았습니다. 이에 구글링과 다른 영상 자료를 보며 이해에 도달했는데, 내용은 다음과 같습니다. 프로그램이 RAM 위에 올라가면 프로세스가 된다. (이는 강사님께서 말씀해주신 내용으로, 해당 개념을 기반으로 이해를 도모했습니다.)OS 는 프로세스에게 가상 주소 공간을 제공한다. (32biit 기준으로 4gb, 이때 가상 주소 공간과 가상 메모리 공간은 다른 개념)프로세스 내의 가상 주소 공간은 페이지 단위로 나눠지고, 논리 주소가 부여되며, stack 이나 heap, code 등이 해당 공간에 할당된다.이때 사용되는 페이지만이 RAM 의 프레임과 매핑되며, 사용되지 않는 페이지는 보조기억장치에 저장된다.이에 프로세스의 가상 주소 공간의 크기는 32bit 기준 4gb 지만, 실제로 운용되는 것은 1mb ~ 2mb 이다. (예를 들어) 이때 "가상 메모리는 실제 메모리보다 더 크게 보이게 하는 기술이다" 라고 말씀하신 이유는 실제 프로세스는 크기가 4gb 라고 치고, 불필요한 부분까지 모두 RAM 위에서 자리를 잡고 있다면, 소수의 프로세스 밖에 운용하지 못할 것이다.-> 이에 필요한 부분만 RAM 에 올림으로써 자원의 낭비를 줄이고, 많은 프로세스를 운용하게 할 수 있게 하기 때문이라고 이해를 했습니다. 추가적으로 이해한 내용으로는 가상메모리를 사용하는 이유로써,임의의 프로세스가 죽었을 때 OS 에서 이를 감지하여, 해당 프로세스의 페이지와 매핑된 프레임을 반환한다.이를 통해 다른 프로세스는 반환된 공간을 사용할 수 있게 된다.만일 가상메모리 기법이 존재하지 않는다면, 프로세스가 죽어도 RAM 위에서 자리를 차지할 것이며, 또 다른 프로세스들이 계속해서 죽어갈 때 끝내 RAM 에는 자리가 존재하지 않을 것이다. 위 내용과 같이 이해를 했으며, 최종적으로 가상메모리를 정의한다면, "가상 주소 공간을 주 기억장치와 보조 기억 장치 사이에서 매핑하여 효율적으로 메모리를 관리하는 기법이다" 혹시 제가 이해한 부분에 대해서 잘못된 점이나 보완할만한 점이 있다면, 조언을 부탁드리고 싶습니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
MacOs m1 컨테이너 실행 문제
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.MacOs m1 사용중인데 Dockerfile을 이용해서 이미지 빌드한 후에 docker run --privileged -p 8080:8080 --name mytomcat docker-server:latest 명령어로 컨테이너 실행하면 exec /usr/local/tomcat/bin/catalina.sh: invalid argument 오류가 발생합니다edowon0623/docker-server:m1으로 이미지 받아서 실습 내용과 동일하게 실행했습니다
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
기출 24년 2회차 (파이썬 Split() 문제 )
강사님 안녕하세요 파이썬 Split 문제 풀던중 궁금한점이 있어 문의 드립니다.아래 코드 수행시 최종 출력값은 아래와 같이 출력 되어야 하는거 아닌가요?실제로 잘린 값: ['I' , 'IS', 'ES' , 'S' , 'RING']S코드 (아래 부터)dedef split_k(input_str, k): split_result = input_str.split('T') print(" 실제로 잘린 값: ", end="")print(split_result)return split_result[k](중략)
-
미해결해킹대회(CTF) 출전을 위한 시스템해킹(Pwnable) 입문
이거 플래그 찾는거맞나요?
basic 을 넣고하면 flag가 HackWorld{censor}로 나와서 답이 아니길래 ./basic 을 빼고 했는데이렇게 경로가 / 여기로 가지는데 여기서 플래그를 찾아야 하는건가요? ..
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
패키지 관련 코드 질문이요.
UPackage* StudentPackage = ::LoadPackage(nullptr, *PackageName, LOAD_None);if (nullptr == StudentPackage){UE_LOG(LogTemp, Warning, TEXT("패키지를 찾을 수 없습니다."));return;}//내부에 가지고 있는 에셋을 모두 다 로딩해주는 함수StudentPackage->FullyLoad();다음 코드에서 내부에 가지고 있는 애셋을 모두 다 로딩해주는 함수가 FullyLoad()라고 들었는데요.애초에 하나의 패키지는 하나의 애셋만 가질수있는 구조라고 들었는데 그러면 FullyLoad()는애셋을 하나만 로딩해주는 거 아닌가요? 그리고 SaveStudentPackage( ) 함수에서 패키지를 생성하고 저장하기 전에 UPackage* StudentPackage = ::LoadPackage(nullptr, *PackageName, LOAD_None); if (StudentPackage) { StudentPackage->FullyLoad(); }이 작업을 하면 더 안정적 이다고 하셨는데, 잘 이해가 안가요.. 제가 이해한 바로는로딩해주는 작업은 에디터 상 애셋을 코드상에 가져오기 위해 쓰이는 걸로 알고있는데 그게 아닌가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
상태패턴과 브랜드 트리가 필요한 프로젝트의 경우
결국 상태 패턴을 적용해서 그걸 그대로 애니메이터의 스테이트로 연동하면서정리하셨는데 만약 상태패턴을 그대로 쓰면서 브랜트 트리를 꼭 써야하는 프로젝트면어떤식으로 정리하시는지 궁금합니다.
-
해결됨파이썬 알고리즘 트레이딩 파트1: 알고리즘 트레이딩을 위한 파이썬 데이터 분석
5분챌린지: Window 가상머신 만들기에서,,,
6:23~30 사이에 커서가 잠깐 사라지는데Remote Desktop Connection 창이 어디서 나타나는지 잘 안보이네요. Connect에서 연결, Bastion을 통한 연결 모두 선택해 보았는데동일한 창이 생성되지 않습니다. 확인 부탁드리겠습니다!
-
미해결프론트엔드 개발환경의 이해와 실습 (webpack, babel, eslint..)
[수강 중 트러블슈팅 공유] webpack, webpack-cli 버전
"devDependencies": { "webpack": "^4.41.5", "webpack-cli": "^3.3.10" }수업과 동일한 명령어를 실행하려면 강의 내용과 동일한 버전을 사용하시면 문제 없이 실행됩니다. 버전이 바뀜에 따라 --help 결과물과 명령어 옵션들이 다소 변경되네요. (webpack major version이 4여도 변경 여부가 있습니다) 수업 노트에 webpack@4.41.5 버전을 사용하도록 안내해주시면 어떨까요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
강의에서 구조적, 행위 다이어그램 구분이 잘 된건가요?
화면설계/애플리케이션 테스트 강의의 4:15 입니다.PPT 상단에 [구조 - 커뮤니케이션, 활동 다이어그램] 제목으로 커뮤니케이션, 상태 다이어그램을 설명하고 있습니다.하지만 3:00 내용에 따르면 커뮤니케이션, 상태 다이어그램은 행위 다이어그램이지 않나요?
-
미해결Part2: 초중급 iOS 인스타그램 클론(SwiftUI, MVVM, Firebase, 2024)
firebase에서 데이터를 불러오는데 오류가 발생합니다.
grpc.resource_quota=0x600000cab5a0, grpc.server_uri=dns:///firestore.googleapis.com}}: connect failed (UNKNOWN:(domain:NSPOSIXErrorDomain, code:50, description:The operation couldn’t be completed. Network is down)위의 오류가 발생하는데 로그인 정보는 제대로 출력되는데 다른 부분에서 데이터를 불러오지 못하는데 어떤 부분을 수정해보면 좋을까요?
-
미해결노코드 버블, 클론웹사이트 만들기 A to Z
강의 자료는 어디에 있나요?
강의자료나 전달드린 파일이라고 하시는데어디에서 어떻게 받아야하는 걸까요?제가 놓친 걸까요?