묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
ReleaseRef 질문이 있습니다!
WraightRef wraight(new Wraight());wraight->ReleaseRef();wraight = nullptr;wraight 에 nullptr을 넣어서 ReleaseRef가 수행하는 도중에 위처럼 (중간에 개입)을 써 놓은 부분에서 다른 WraightRef가 wraight를 참조를 시도한다면 reftCount는 0이 되지만_refCount는 1이 되어서 delete this가 실행이 되면 문제가 발생하지 않나요??
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
리소스와 scv
안녕하세요 강사님!스타를 예로 들어주셨는데,그렇다면 SCV가 API에 해당하고 미네랄, 건물은 리소스, 미네랄을 켜라 명령, 건물을 지어라 명령이 HTTP 메서드에 해당하는 건가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Serialization#3강에서 11분 6초 Array.Copy 질문
//string Array.Copy(Encoding.Unicode.GetBytes(this.name),0,segment.Array,count,nameLen); 강사님께서 destination Index가 들어갈 자리에 count를 인자로 주셨는데, segment의 경우 자료형이 ArraySegment이기 때문에 단순 count가 아닌 segment.Offset + count를 destination Index로 주어야 될것같은 의문이 들어서 질문드립니다.
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
Socket에 대한 질문입니다.
서버측에서 연결 대기하는 소켓과 서버측에서 프로세스가 생성하고 오픈하는 소켓은 서로 다른건가요? 다르다면 그 차이는 무엇일까요?
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
순서 번호(sequence number)에 관한 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요, 강사님?? 강의를 듣다가 궁금해서 질문 남깁니다. 두 Host가 TCP IP 통신을 위해 3 way handshake 후 통신을 할때 sequence number는 이전 그대로인가요, 아님 새로운 임의의 숫자인가요?예를 들어 초기에 Host A(1234) / Host B(369)이면 3 way handshake 후 Host A(1235) / Host B(370)가 된다. Host A에서 Host B로 데이터를 전송할 때 sequence 번호는 1235인가요? 아님 새로 배정되나요?매번 질문에 답해주셔서 감사합니다 :)
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
잡큐1, 2를 들으며 질문이 있습니다. (Push 큐로직 + Send()의 시간복잡도 관련)
루키스님 안녕하세요?잡큐 1, 2를 들으며 본 서버 강의 앞부분과 비슷한 내용같은데 차이를 몰라 질문 올리게 되었습니다. 아래 질문들의 제 본질적인 질문은옛날에 만든거 아닌가? 왜 새로 만드지? 뭐가 다른거지?입니다 JobQueue #1 강의 중PacketHandler.cs 수정 중에스레드가 일을 Push할 때 처리 가능한 상황이면 해당 스레드가 처리, 그렇지 않으면 Queue에 Push만 하고 종료, 서버코어의 Session.cs의 Send()가 이미 비슷하게 구현됨이라고 설명해주셨는데, 말씀 그대로 이미 비슷하게 큐로 구현이 되어있어 뭐가 다른거지 생각해보다가아래 그림 플로우 처럼 제가 이해한게 맞는지 궁금합니다. JobQueue #2 강의 중 Broadcast() 로직의 O(N^2)을 O(N)으로 줄이기 위해 패킷 모아보내기 스킬을 소개해 주셨습니다.그런데 강의 앞부분 'SendBuffer'에서 버퍼를 다룰 때RecvBuffer와는 다르게 SendBuffer는 외부에 구현함으로써 O(N^2)을 O(N)으로 줄일 수 있다.라고 이미 말씀해주셨는데요, O(N^2)을 O(N)으로 줄이는 둘의 차이점이 궁금합니다.둘은 완전히 다른 얘기일까요? 만약 그렇다면, 둘 다 그대로 방치했다면 O(N^3) O(2N^2, 표현이 맞진 않지만 느낌상)이 되는 로직이 되는건가요? 답변 미리 감사합니다.수강자 올림
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
API 종속에서 자유로워지기
강의 초반부에 windows.h같은 헤더를 사용하게 되면 추후 바꿔야 될 부분이 많아 표준인 thread를 사용한다고 하셨습니다.강의가 window os기반으로 구성되어 있고, 제가 window os는 잘 사용해 보지 않아 막연한 걱정이 있는데, 그럼 window에서 작동하는 IOCP로 서버 구성시, 추후 리눅스로 옮겨갈때 epoll로 바꿔주는 과정에도 엄청한 자원이 소모되지 않나요? 현업에서는 대부분 window os로 서버를 구성하나요? epoll에 대해서도 꼭 공부가 필요한지, IOCP에 비해 중요도가 떨어지는지도 궁금합니다.
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
코어와 쓰레드의 매핑관계가 잘 이해가 가지 않습니다.
10:30부근에 말씀하시는 내용을 들어보면,쓰레드의 개수 = 코어의 개수 일때 가장 이상적이라고 하셨습니다.CPU가 4코어일때 하나의 프로세스(MMO서버)에 4개의 쓰레드가 가장 이상적이라는 의미인가요?멀티코어 프로세서에서 같은 프로세스여도 서로 다른 쓰레드이면 각 코어마다 같은 프로세스의 서로 다른 쓰레드 작업이 가능하다. 이게 가능한 이유는 유저모드 쓰레드가 아닌 커널 모드 쓰레드 이기 때문이다.제가 이해한 위 내용이 맞는지 궁금합니다.
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
무상태일때
서로 통신할 때 핸드셰이크를 한다고 했는데상태 유지일 경우는 핸드셰이크를 한번 하고 쭉 유지된다고 생각하면 되는데무상태인 경우에는 응답이 오고 다시 요청을 보내고 서버가 바뀔때마다 핸드셰이크를 하는건가요??아니면 중계서버랑 핸드셰이크를 한 후 그게 계속 유지가 되는건가요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
Stack Frame 구조 질문 (section2 스택메모리와 스택프레임 10분~12분경)
강의에서 설명된 내용 기준으로 argument 10 및 return address가 main함수의 스택 프레임에 있는 것으로 설명되었는데, 실제 코드에서 main함수에서 Test함수를 argument 10을 주면서 호출할 시에 매개변수 10에 대한 값과 추후에 다시 main 함수로 돌아오게 될 위치에 대한 리턴 어드레스 값은 메인 스택 프레임이 아닌 그 아래에 위치할 Test함수의 스택 프레임에 있는 것이 더 정확하지 않나에 대한 질문드립니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
강의 내용 깃허브 또는 블로그 정리 관련 질문
안녕하세요.강의 들은 내용을 전반적으로 깃허브에 정리하려고 합니다.강의 캡쳐본이나 강의 예시 코드를 정리하고 작성을 하면서 이해하는 방식으로 학습하려고 하는데, 공개된 공간에 출처를 남긴 후 강의 캡쳐본이나 예시 코드를 함께 작성하여 정리해도 되는 지 여쭤봅니다.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
아이패드에서 재생 불가
섹션7 "S3 개요 및 버킷 생성 실습"부터 아이패드에서 재생이 되지 않습니다.'Now encoding ... 동영상을 준비중에 있습니다.' 문구만 표시되네요.(참고로 iPadOS 17.02 버전입니다.)확인 부탁드립니다.
-
해결됨20년 경력자의 알기쉬운 컴퓨터네트워크
ICMP와 방화벽
ICMP에서 운영체제의 방화벽이 Request를 버려버린다고 하셨는데, 그러면 상대방측에서는 어떻게 통신가능한지 확인할 수 있는지 이해가 잘 가지 않습니당
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
host 에 대한 질문입니다!
Host는 네트워크에 연결된 컴퓨터를 말하고, 이 host가 네트워크를 위한 기능을 하면 switch 라고 하고,네트워크를 이용하는 주체면 end-point 라고 하셨는데요 쉽게 말해 PC를 통칭 해 host라고 부르고,해당 PC가 네트워크 장비인 경우 switch라 하고, 일반 user가 사용하는 PC의 경우 end-point라고 생각하면 될까요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Common 폴더에 PDL.xml을 둬야만 작동합니다.
START ../../PacketGenerator/bin/PacketGenerator.exe ../../PacketGenerator/PDL.xmlServer/PacketGenerator/bin에 PacketGenerator.exe가 생성되고, Server/PacketGenerator에 PDL.xml을 둬도 실행이 되는 것 까지 성공하였습니다.하지만 이후 배치파일 작성 부분에서 PacketGenerator.exe을 실행하긴 하지만, PDL.xml을 찾는 경로를 Server/PacketGenerator이 아닌 Server/Common에서 찾고 있었고, 실제로 Common 폴더에 PDL.xml을 두니 정상 작동 하였습니다.해당 현상을 해결할 수 있을까요?
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
POST 등록과 PUT 등록 차이 중 의문점
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]HTTP API URI 설계 중 POST 등록 시에는 클라이언트는 URI를 모르니 컬렉션만 지정해서 URI를 /members까지만 하고 요청하면 서버가 URI를 부여해서 회원 등록이 완료되고PUT 등록 시에는 클라이언트가 URI를 알고 있으므로 스토어 및 식별자까지 지정해서 /files/star.jpg라는 완전한 URI를 서버에 요청해서 등록된다고 이해했습니다.그런데 의문점이 POST /members 는 다수의 객체 등록이고 PUT /files/star.jpg는 단일 객체 등록이니 PUT으로 등록 시에는 클라이언트가 특정 식별자를 지정해서 단일로만 등록되는 것이고, POST로 등록 시에는 클라이언트는 특정 식별자를 모르니 컬렉션만 URI에 지정함으로써 다수가 등록되는 걸로 이해해도 될까요?만일 맞다면 앞으로 외울 때 PUT : 단일 등록 , POST : 다수 등록으로 제가 이해해도 될까요?
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
비연결성에 대해 이렇게 이해하면 될까요?
HTTP는 기본적으로 비연결성 이지만 일정시간 연결을 가진다.기존에는 http는 3wayhandshake하고 보낼거 보내고 소켓 자원을 낭비 하지 않기 위해 바로 연결을 끊었다.하지만 이후에는 html파일 외에 css ,js등 각종 리소스들을 보내야되기때문에 일정시간동안 약 30초동안은 tcp연결을 끊지않고 대기한다.
-
해결됨롱런하는 슈퍼 개발자가 되기 위한 필수 지식, IT 인프라 기초 총정리
포워드 프록시(캐시) 서버에 대한 질문이 있습니다.
안녕하세요, 클라이언트에서 서버로 한 번 더 정보를 요청하는 경우 캐시 서버에서 데이터를 조회하여 데이터를 보여준다고 하셨는데그렇다면 클라이언트에서 처음으로 요청하는 데이터의 경우에도 캐시 서버에서 조회하는 과정을 항상 거치나요? 아니면 캐시 서버에 조회하려는 데이터가 있다는 사실을 알 수 있는 방법이 있나요?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
스펙이 무슨 뜻인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용강의 중간중간에 스펙이라고 말씀하시는데 이게 무슨 의미인지 궁금합니다.
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
if-none-match와 if-modified-since
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.if-none-match는 etag값을 사용하여 원본 데이터가 바뀌었는지 확인하고 if-modfied-since는 last-modified 값을 사용하여 원본 데이터의 수정을 확인하는 것으로 배웠습니다. 여러 사이트를 확인해봤을 때 이 둘을 동시에 사용하는 경우가 있던데 그 이유를 정확히 모르겠습니다. 데이터가 바뀌더라고 etag를 의도적으로 같게 설정하는 경우(주석이 바뀐 상황 등)가 있는데 이 상황인 경우 etag는 의도적으로 같게 하더라도 수정 날짜는 바뀌어 결국 새로 보내게 되는데 둘이 함께 공존하는 이유를 정확히 모르겠습니다.