묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨UDS 표준 규격을 통한 이해
AUTOSAR 관련 기초 강의도 해주세요~~~
오토사 라이선스가 비싸서 실습은 못하겠지만어떤식으로 개발하고 어떻게 활용하고 개념 강의도 해주시면많은 도움이 될것 같습니다.감사합니다.
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
캐시가능 Cachable 질문
응답 결과 리소스를 캐시해서 사용해도 되야 캐시 기능을 편하게 사용할 수 있다. GET의 경우 만약 요청 메세지가 같다면 굳이 통신까지 사용해서 서버에서 응답을 받을 것이 아니라 이전 응답에 의한 응답 메세지가 캐싱되어있다면 캐시에서 꺼내올 수 있을 것이다. 이러한 방식을 완전 캐시 히트 (Full Cache Hit)라고 한다.캐시를 활용하여 서버와의 최소한의 통신만 하는 조건부 요청이 가능하다. 만약 캐시를 이용할 수 있는 GET요청이지만 이전 요청과 요청조건이 다르다면 서버와의 최소한의 통신으로 응답이 같을 건지 확인하고 같을 것이라면 캐시에서 이전 응답을 꺼내오는 것이다.POST를 생각해보자. POST는 body message를 처리한다고 했다. 즉 GET과 달리 body message가 추가된다. 아래는 "만약 POST작업을 캐싱한다면"의 예시이다. 캐시는 key:value 구조를 가진다.만약 url을 key로 사용한다면 body message가 달라질 경우 동일한 작업이 보장되지 않는다./api/submit: POST /api/submit {"username": "user1", "password": "pass1"}/api/submit: POST /api/submit {"username": "user2", "password": "pass2"}보통 HTTP 캐시는 요청을 구분하는 주요 키로 URL을 사용한다. POST 요청의 본문은 URL과는 별도로 고유한 캐시 키를 구성해야 하며, 이는 복잡성과 추가적인 관리를 필요로 한다.즉 GET보다 POST가 다뤄야할 변수가 많기에 상태를 저장하는 것이 유리하지 않을 확률이 더 높다는 것이다. POST는 응답 메시지를 캐싱하기에도, 요청 메시지를 캐싱하기에도 난이도가 높아진다.이해를 확인하기 위해 제가 작성한 캐시가능에 대한 설명입니다. 혹시 틀린점이 있을까요? 요청정보 캐싱과 응답정보 캐싱에 대한 제 설명이 확신이 서지 않습니다...
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
ThreadLocal을 사용했는데 왜 여러 스레드에서 접근이 가능한걸까요?
ThreadLocal을 사용하는 이유ThreadLocal을 사용해서 전송작업중인 스레드마다. 독립적인 버퍼를 보장해주었는데 , 강의 마지막에 왜 여러 스레드에서 인스턴스에 접근이 가능하다는건지 이해가 되지 않습니다.세션에서 스레드 버퍼를 참조하고 있을 가능성 때문인가요? 스레드 로컬을 이용해 공간 독립성을 보장해준 것이 아닌가요?또한 실제 SendBuffer를 이용하는 부분은 스레드별로 보장되어 있는것이 아닌가요?이해가 되지 않습니다 ㅠ
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
이벤트핸들러를 이용하지 않는 이유
SocketAsyncEventArgs args = new SocketAsyncEventArgs(); args.Completed += OnConnectedCompleted; args.RemoteEndPoint = endPoint; args.UserToken = socket;이벤트 핸들러를 이용하지 않고 바로 대입한 이유가 있을까요?
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
투사체 서버 판정 질문입니다
서버가 보통 10 ~ 20 프레임으로 돈다고 들었는데 그렇다면 서버 내의 오브젝트(투사체, 아이템)도 아무리 빨라야 10 ~ 20프레임이 될 것 같습니다.그렇다면 RPG기준으로 몬스터가 논타겟 총알을 발사했을 때 플레이어를 통과하는 경우도 있지 않나요?1인게임 만들 때 처럼 딱 맞았을 때 판정하면 좋겠는데 그게 안되니 언제 판정을 해야할지 모르겠습니다..
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
TCP 수신시 순서보장에 질문있습니다!
안녕하세요.루키스님 1회독마치고 2회독을 하는중 궁금한점이 생겨 글남기게되었습니다.만약 클라가 패킷을 보내는 순서를 A -> B 라고 했을때, 서버에서 패킷을 수신해보니 A, B둘다 패킷이 부족하여 다음 패킷을 대기중이라 했을때두번째 패킷을 받아보니 B는 부족한 패킷을 채워 완전체가 되고 A는 아직 부족하다고 했을때클라에서는 A -> B 순으로 명령하여 패킷을 전송했지만 A의패킷은 아직 수신대기중이고 B의 패킷은 전부 수신되었을때B의 패킷을 컨텐츠영역으로 보내 클라에게 전송하는걸까요?그럼 클라에서의 명령이 A->B가 아닌 B->A로 실행되는것일까요..?만약, B->A 로 클라가 실행된다면 정상적으로 A->B로 실행하게끔 하는방법이 있을까요..?문뜩 궁금해서 여쭤보게되었습니다. 답변해주신다면 감사하겠습니다!
-
미해결그림으로 쉽게 배우는 네트워크
2:30에 collision domain이 나뉜다는 내용에 대한 질문입니다.
collision domain이 포트별로 나뉜다는 것에 대한 내용을 제가 옳게 이해했는지 질문올립니다.가령 브릿지를 통해 PC1이 PC4에게 데이터를 전송한다고 하면 1. PC4는 데이터가 수신되기 전까지 데이터를 송신하지 못하며2. PC4를 제외한 다른 기기들은 자유롭게 데이터 송신이 가능하므로특정 기기가 수신 대상자가 되면 스스로가 collision domain이 됨을 나타내는 것인가요?추가로, 포트라는 용어를 사용하셨는데포트 = 기기 라고 이해하면 될까요?
-
미해결그림으로 쉽게 배우는 네트워크
허브
허브 장치를 설명 해주셧을때데이터를 보낼때 목적지를 연결된 모든 노드에게 전달하는 브로드캐스트 방식이라고 해주셧는데강의에선 허브를 통해 데이터를 PC들에게 전달하게 되면전달받은 PC들에 랜카드가 프레임의 헤더에 적힌 목적지 MAC주소를 자신의 MAC주소를 비교해 버리거나 받는다고 했습니다.근데 초반 강의에서 말씀해주신 브로드캐스트는 모든 노드는 해당 데이터를 일단 받고, 랜카드가 인터럽트를 발생시켜 CPU가 이 데이터를 처리할지 말지 결정하는 방식으로 한다고 하셧습니다.위에 허브가 전달하는 방식은 랜카드가 주소를 판단하여 버리거나 받는형식인데그렇다면 이건 브로드캐스트 방식이아니라 유니캐스트 방식과 유사하지않나요?이전에 네트워크 통신방식 강의에서유니캐스트와 브로드캐스트는유니캐스트 : 1 )목적지가 명확하게 정해져있음 2) 데이터를 받기전에 랜카드에쪽에서 먼저 확인하고(MAC주소) 데이터를 받거나 버림브로드캐스트 : 1) 목적지가 연결된 모든 노드 2) 데이터를 일단 받고나서 CPU가 데이터를 처리할지 말지 결정함 만약 받았는데 쓸모없는 데이터일경우 CPU를 낭비하는 결과로 알려주셧는데 저러면 허브같은경우는 유니캐스트와 브로드캐스트가 둘다 섞여있는 방식인걸까요?내용에 혼동이 와서 글 남겨드립니다
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 기간 연장 부탁 드립니다!
안녕하세요!덕분에 AWS 개념을 잡고, 서비스를 접하며 잘 공부 하고있습니다.제가 일을 하며 강의를 수강하다가, 퇴사를 하고 공부를 하던 중에 부트캠프를 진행 하게되어시간적으로 한계가 있어 강의를 끝까지 수강하지 못했습니다.아직 부트캠프 기간이 5개월 정도 남았는데,수료 후 자격증 취득을 목표로 하고 있습니다.혹시 가능하다면, 수강 기강 연장을 부탁 드려도될까요?
-
미해결그림으로 쉽게 배우는 네트워크
1계층에 역할에 관하여
궁금한게 있어서 글 남겨드립니다1계층 즉, 물리계층은 데이터(프레임)을 전기신호로 바꿔서 전송하는 계층이라고 말씀해주셧습니다대표적인 1계층 장비가 케이블이고요다만, 여기서 햇갈리는게케이블은 데이터를 전기신호로 바꿔주는게 아니라전기신호를 전송하는 역할만을 가지고있는지 아닌가 싶습니다이전 수업에서 말씀하셧던대로데이터를 전기신호로 바꿔주는 역할은2계층에 장비인 랜카드가 아닌가요?그래서 랜카드가 물리계층에 역할을 하신다고 하셧구요만약 위에 말이 맞다면1계층은 정확히 말하자면 물리계층은 데이터(프레임)을 전기신호로 바꿔서 전송하는 계층이 아닌, 전기신호를 전송하는 계층으로 봐야되지않나요?
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
포트폴리오 작성 Pimpl Pattern 사용
현재 포트폴리오를 작성하면서 각종 라이브러리 및 .h파일을 작성하고 있습니다.개발중 한가지 고민이 생겼습니다.나는 listener.h를 불러왔는데 왜 .h파일을 불러와져야할까?그래서 찾아보니 Pimpl 패턴으로 클래스를 전방선언하고 .cpp에 구현함으로써 .h 파일에는 다른 include.h가 되는걸 최소화 할 수 있다는걸 알게 되었습니다.해당 패턴에 장 단점또한 정확하게 파악하고 있습니다.하지만 Pimpl패턴을 사용하는것이 포폴에서 좋은 영향을 줄지는 걱정이 됩니다. 괜히 읽는 사람입장에서 불편하게 만들지 않을까라는 것 입니다.어떻게하는게 좋을까요...
-
미해결이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
멀티플레이어 프레임워크가 서버프로그래밍의 상위호환인가요?
포트나이트까지 언리얼 멀티플레이어 프레임워크로 제작할 수 있다면 서버개발자는 굳이 필요가 없을거같은데 언리얼의 멀티플레이어 프레임워크를 사용하면 서버 개발자를 대체할 수 있는건가요? 서버 개발자로 근무중인데 강의를 듣고 커리어 측면에서 궁금한 점이 생겨 질문드립니다
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
블로그 정리
안녕하세요 영상을 보면서 자격증 공부를 하고 있습니다. 영상 내용을 바탕으로 개인 블로그에 정리하며 공부를 하고 싶은데 강의 출처를 밝히고 블로그에 정리해서 올려도 되는지 궁금해서 질문을 남겼습니다!
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
Server 관점에서의 소켓 관련 질문(TCP 기즌)
서버의 동작이 아래와 같은지, 혹은 잘못 이해한 부분이 있는지 여쭤봅니다.1단계)서버의 process 가 통신하기 위한 [연결 대기용 socket] 이 생성 [Listen]2단계) 클라이언트가 서버로 요청 보냄3단계 ) 서버의 process 는 연결대기용 socket 을 통해클라이언트의 연결 요청을 받음,4단계 ) [연결 대기용 socket] 과 동일한 port번호를 가지는새로운 socket 이 생성되어, 요청한 클라이언트와의 통신은 새로운 socket 이 담당하고,추후 다른 클라이언트의 연결 요청을 처리하기 위해,기존의 [연결 대기용 socket] 은 그대로 존재하게 됨
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, flask 배포) [풀스택 Part3]
강의 듣다가 궁금한 점이 생겼는데요
강의에서 putty 클라이언트를 사용해서aws 서버의 리눅스(우분투 패키지)에 키를 사용하여접속하면 리눅스에 접속이 성공하고 디렉토리 포인트가 잡히는 개념이더라구요.그런데 aws의 리눅스는 아이디 비밀번호로 접속이 불가능한가요?su -를 입력해서 관리자 권한에 들어가보려고 하니까password를 입력하라고 하는데 키로 접속한 기억은 있는데 password를 언제 설정했는지 기억이 잘 안나더라구요강의에서 password를 입력하는 구간이 없었나요..?ssh로 리눅스 서버 접속해보고 싶은데 아이디는 whoami하면 나오던데 비밀번호를 잘 모르겠더라구요..ssh로 접속하더라도 키로 접속해야 하는건가 싶기도 하구요.. 두서없는 질문이지만 답변 부탁드려도 될까요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 기간 연장 부탁드립니다.
제가 군인이라 생각보다 공부 시간이 부족하네요. 수강 기간 연장해주시면 감사하겠습니다.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수간 기간 연장 부탁드립니다.
수강 기간 연장 가능할까요?아직 시험일정을 못잡아서 추가적으로 학습이 필요할것 같아 기간 연장 요청 드립니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
OnSendCompleted 에서 질문이 있습니다.
OnSendCompleted에 보면if (_sendQueue.Count > 0) RegisterSend();이 부분이 필요한 부분인지 궁금합니다. void Send(byte[] sendBuff) 이 함수 안에서 이미 lock(_lock) 가 걸려있고OnSendCompleted에서도 lock(_lock) 가 걸려있는데요. lock 로 인해서 한쪽이 작업중이면 다른 한쪽은 lock이 풀릴때까지 대기중일거 같아서요
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강기간 연장 부탁드리겠습니다.
타 자격증 시험일정하고 겹쳐서 결제해놓고 수강을 거의 못했는데 연장 부탁드리겠습니다ㅠ
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
인캡슐레이션, 디캡슐레이션
안녕하세요. 궁금한 것이 있어서 질문 드립니다.두 컴퓨터가 인캡슐, 디캡슐을 통해서 패킷을 주고 받는건 이해를 했는데요1번 컴퓨터에서 2번 컴퓨터로 인캡슐레이션 된 패킷이 전송된다고 하면스위치에서는 2계층 헤더를 까서 보고 라우터에서는 3~4계층 헤더를 까서 보는거 아닌가요?(라우터에서 네트워크로 전송을 해야 되니 전송계층인 4계층까지 깐다고 생각했습니다.)그렇게 패킷이 전송된다면 4계층까지 디캡슐레이션 된 패킷이 되는데목적지에 도달해서 다시 디캡슐레이션 하는게 이해가 가지 않습니다.라우터에서 4계층까지 헤더를 보고 다시 헤더를 재생성해서 패킷에 붙여주는건지요.. 그리고 OSI 7 레이어가 컴퓨터 기준에서는 이해가 되는데네트워크 장비, 스위치는 2계층 장비라고 하고, 라우터는 3계층 스위치인데컴퓨터에 적용해서 OSI 7레이어를 생각하다가 장비쪽에서 또 2계층, 3계층이 나오니 헷갈립니다.그냥 데이터 링크 역할을 하고 전송을 하는 역할을 하니까 OSI7 레이어 기준으로 보면 2계층 장비다, 3계층 장비다 라고 하는건지요