분수대는 NetLoadOnClient 를 설정한 객체 입니다. 1. 해당 객체는 서버에서 생성 및, 클라로 복제 되는 객체가 아닌 서버와 맞게 클라가 메모리에 로드하는 객체로 이해하고 있습니다. 근데 SetOwner 를 서버에서 한다면 SetOwner 을 하는 분수대의 월드 에서는 바로 첫번째 플레이어 컨트롤러를 통해 (의미가 없다고 해도)오너 설정이 가능하나 서버에서는 해당 분수대의 오너가 될 객체가 무엇인지 모르는데 그냥 이터레이터를 돌려서 서버 플레이어 컨트롤러가 아니면 바로 그냥 분수대에 오너를 설정하는데요. 이것이 헷갈립니다. 분수대로 결국 서버에서 생성되어 관리되며 그래서 인터레이터를 통해 (서버가 아닌)첫번째 오너를 설정해도 되는지 궁금합니다.
end-point 즉 end system은 host이고 Switch는 호스트가 아닌 intermediate device로 분리되는 것으로 알고 있는데 intermediate device도 호스트라고 할수있는것 일까요? intermediate device 라우터도 IP주소를 가지고 관리 목적 서비스를 제공할때 호스트처럼 동작은 할수 있는데 이것은 부가 기능이고 주요기능은 패킷 포워딩으로 호스트가 아니라고 알고있어서 질문드립니다.
현재 71~87 페이지 공부 중인데... 앞 부분은 어찌저찌 완성시켰지만 2장 들어오면서 부터 정확히 어느 위치에 어떻게 넣어야 할지 감도 안오네요.. 결국 AI 도움을 받아서 쓰긴 썼는데... (결과 화면은 출력됐습니다. 근데 책 코드와 조금씩 다르네요.) 코드 입력하는 부분이 너무 헷갈리는데 중간 과정에 대한 소스가 따로 있을까요? 책에 나온 깃허브에는 완성본만 나와서 이게 맞는지 모르겠네요. 현재 2장 진행하면서 2.3까지 책의 내용대로 진행해봤는데 너무 진행이 안되서 글 남깁니다.
현재 71~87 페이지 공부 중인데... 정확히 어느 위치에 어떻게 넣어야 할지 감도 안오네요. 결국 AI 도움을 받아서 쓰긴 썼는데... (결과 화면은 봄.. 근데 책 코드와 조금씩 다르네요.) 코드 입력하는 부분이 너무 헷갈리는데 중간 과정에 대한 소스가 따로 있을까요? 책에 나온 깃허브에는 완성본만 나와서 이게 맞는지 모르겠네요. 현재 2장 진행하면서 2.3까지 책의 내용대로 진행해봤는데 너무 진행이 안되서 글 남깁니다.
안녕하세요 강사님. 저는 sprint 1,2를 수강했고 3을 수강 중에 쿠버네티스 관련 서적을 발견해 읽어보며 공부하고 있습니다. worker-node 는 중요하지 않나요 ? kubelet는 pod spec을 받아서 cri로 컨테이너 실행을 담당한다, 스케줄링 관리한다, 로 이해했는데 아직까진 워커 노드에 대한 개념이 없어서, 실무에서는 깊게 파고 들어야 사용하는 것이다 (굳이 안써도 되지만 쓰면 더 효율적이다?) 인 것일까요?? sprint 4나 대세는 쿠버네티스를 봐야 이해가 될까요? 블로그에 https://cafe.naver.com/kubeops/496 이부분이 있길래 문의드립니다 ! gke관련 저는 클라우드 경험 없는, 온프레미스 경력만 있는 웹 개발자입니다. 그러다 보니 이해를 못했는 이슈인 것 같은데, 구인 사이트를 보면 종종 devops를 클라우드 + 온프레미스를 같이 진행하는 공고를 많이 봤습니다. 그런 경우에는 데이터를 어떻게 관리를 할까요? 온프레미스같은 경우에는 pv로 진행을 하면 되지만, 클라우드는 자체 pvc가 있어서 같은 폴더에서 관리하면 수기로 작성한 pvc파일이 먹혀서 작동하지 않더라고요 . (같은 곳에서 관리를 하니, 온프레미스에서 셋팅한 pvc를 자꾸 무시합니다.) 그리고 volum을 공유하지 못한다고 알고 있는데 데이터는 어떻게 관리할까요 ?? (업무적인 것이 아니라 개인 공부중입니다 ..) [ 👍 좋은 질문을 했을 때 좋은 답변이 돌아 옵니다] 1. 실습 중 본인의 환경이 가이드와 다른 부분이 있었다면 말씀해주세요. 2. 해당 문제의 발생 빈도(재설치 여부)와 문제 해결을 위해 시도해본 케이스를 말씀해 주시면 원인 파악에 큰 도움이 됩니다. 3. 에러 메시지만 봐서는 저도 모르는 경우가 많아요. 그전에 했던 작업이 포함된 캡쳐 화면도 부탁 드려요. 4. 영상 내용에 대한 질문 시 해당 시간을 같이 올려 주시면 답변을 드리는 시간이 더 빨라집니다. 5. 긴 로그는 제 메일로 보내주세요. ( k8s.1pro@gmail.com ) 6. 카페 [ 강의 자료실 ]에도 많은 질문과 답변들이 있어요!
레드라쿤 가이드북 애플리케이션에서 초대를 받았습니다! 메일에는 아래 내용만 있고 코드가 없습니다. 레드라쿤 가이드북 레드라쿤 가이드북 애플리케이션에 가입한 기록이 있습니다. 아래 버튼을 클릭하여 계정 비밀번호를 설정하고 접근 권한을 얻으세요: 비밀번호 설정 비밀번호 설정를 클릭할 수 없을 때는 웹 브라우저에서 다음 링크로 접속할 수 있습니다. https://guides.redraccoon.kr/register/invite/ztoviU9MYpbRfBIEhamCAOt5 그래서 /verify 코드 입력을 진행할 수 없습니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] IO 기본 2 문자 다루기1 시작 pdf파일, ReaderWriterMainV1 코드에서 마지막에 System.out.println("read bytes: " + Arrays.toString( writeBytes )); readBytes가 아닌 writeBytes가 들어가 있습니다
### HTTP 캐싱이 무엇이며 관련된 HTTP 헤더를 설명해주세요. HTTP 캐싱은 클라이언트나 중간 캐시 서버가 동일한 리소스를 재요청하지 않고, 저장된 사본을 사용해 네트워크 트래픽을 줄이는 기술입니다. 이를 위해 캐시 동작을 제어하는 헤더 와, 리소스 변경 여부를 확인하는 검증 헤더, 조건부 요청 헤더 가 사용됩니다. 대표적인 캐시 제어 헤더로는 최신 HTTP에서 사용하는 Cache-Control , 구버전 브라우저와 호환을 위한 Pragma , 그리고 만료일을 지정하는 Expires 가 있습니다. 리소스 변경 여부를 검증하는 ETag 와 Last-Modified 헤더를 통해 서버는 클라이언트가 가진 리소스가 최신인지 판단하고, 조건부 요청 헤더 If-Match , If-None-Match , If-Modified-Since , If-Unmodified-Since )를 활용하면 변경되지 않은 경우 전체 데이터를 전송하지 않고 304 Not Modified를 반환할 수 있어 효율적인 데이터 전송이 가능합니다. VS ### HTTP 캐싱이 무엇이며 관련된 HTTP 헤더를 설명해주세요. HTTP 캐싱은 클라이언트(브라우저)나 중간 캐시 서버가 동일한 리소스를 재요청하지 않고, 저장된 사본을 사용하여 네트워크 트래픽을 줄이는 기술입니다. 이를 제어하기 위해 캐시 제어 헤더, 검증 헤더와 조건부 요청 헤더가 사용됩니다. 캐시 제어 헤더는 클라이언트와 중간 캐시 사이에서 리소스의 캐싱 동작을 제어하는 핵심적인 역할을 합니다. 대표적으로 Cache-Control , Pragma , Expires 헤더가 사용됩니다. - Cache-Control 헤더는 최신 HTTP 에서 사용되며 캐시 동작을 제어합니다. - Pragma 헤더는 HTTP/1.0 이전에서 사용되며, 구버전 브라우저와의 호환성을 위해 사용됩니다. - Expires 헤더는 HTTP/1.0 부터 사용되며, 캐시 만료일을 정확한 날짜로 지정할 수 있습니다. Cache-Control: max-age 와 함께 사용되면, 해당 헤더는 무시됩니다. 검증 헤더와 조건부 요청 헤더는 클라이언트가 이미 가지고 있는 리소스가 최신인지 확인하고, 변경되지 않았다면 서버가 불필요하게 전체 데이터를 전송하지 않도록 하는 기능을 합니다. 대표적으로 ETag & Last-Modified , If-Match, If-None-Match & If-Modified-Since, If-Unmodified-Since 헤더가 사용됩니다. - 검증 헤더 - Last-Modified : 리소스가 마지막으로 수정된 날짜를 바탕으로 리소스가 변경되었는지 확인합니다. - ETag : 리소스의 고유 식별자(Tag)를 제공하여, Last-Modified 보다 정확하게 리소스가 변경되었는지 확인할 수 있습니다. - 조건부 요청 헤더 - If-Match : 클라이언트가 가진 ETag와 서버의 ETag가 일치할 때만 요청을 수행합니다. - If-None-Match : 클라이언트가 가진 ETag와 서버의 ETag가 다를 때만 요청을 수행하며, 일치하면 304 Not Modified를 반환합니다. - If-Modified-Since : 클라이언트가 가진 마지막 수정 시각 이후로 리소스가 변경되었을 때만 응답을 반환하며, 변경되지 않았다면 304 Not Modified를 반환합니다. - If-Unmodified-Since : 지정한 시간 이후로 리소스가 수정되지 않았다면 요청을 수행합니다. 면접관은 첫번째 답변과 두번째 답변 중 어떤 답변을 선호할까요? 첫번쨰는 결과론적이지만 뭔가얕다는 생각이 들지만 면접관이 꼬리질문하기 쉽게 말한거같고 (물론 꼬리질문도 대비했습니다) 두번째 답변은 디테일을 중심으로 말해서 좋게보일 순 있지만.. 면접관이 꼬리질문하기 어려울거같아서. 참 고민이군요.. 지식 공유자님은 위 두가지 답변 중 어떤 답변을 선호하시나요? 그리고 그 이유가 있을까요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 자바 고급편 수준이 저한테 높아서, 느린 배속으로 반복해서 내용을 겨우 이해는 했는데 강의 내용이 자기 것으로 되었다는 느낌이 없고 교안이나 영상 없이는 이론 설명이나 예제 코드 작성이 잘 안 됩니다. 강의 내용을 자기 것으로 체화하신 분들은 어떻게 복습하셨나요?
강의를 계속 듣고 보니 저는 (리슨)서버 의 경우 필요한 객체만 생성되는 줄 알았으나 마지막 Owner 에 대한 내용도 보니 결국 서버에서 플레이어 캐릭터 액터 도 생성 및 초기화 하고 이를 다시 클라이언트에서 Owner 가 설정되기 전이긴 하나 다시 생성 후 컴포넌트 초기화 , 오너 설정 등이 이루어지는데요. (리슨)서버의 경우 플레이어-접속된 클라이언트의 객체 모두 생성 후 다시 이를 클라이언트에게 전달 , 클라이언트에서는 서버에서 받은 객체 정보를 바탕으로 다시 플레이어 캐릭터 생성 및 오너 설정 즉 서버는 모두 생성한다. 그리고 접속되어 진 클라이언트 플레이어 액터 객체는 모두 서버에 의해 클라에서 생성되며 OnRep_Owner, PostNetInit 등을 통해 서버의 PossessedBy 와 동일한 일을 진행한다 이렇게 이해해도 될까요?
마지막에 로그를 찍어보니 서버 역활을 하는 객체에는 HandleBeginPlay 로그가 출력되었으나 클라 역활을 하는 객체에는 OnRep_ReplicatedHasBegunPlay 로그가 출력되었습니다. 현재는 리슨서버로 진행되니 서버-클라 모두 HandleBeginPlay 가 호출될 줄 알았지만 클라에서는 출력되지 않습니다. 강의 내용처럼 HandleBeginPlay 는 서버 (로컬)에만 호출되니 클라에서는 호출 될 일이 없으며 클라에서는 OnRep_ReplicatedHasBegunPlay 만 호출되나 이것도 bReplicatedHasBegunPlay 값에 의해 호출 될수도 있고 안될 수도 있다 이렇게 이해해도 되나요? 다만 bReplicatedHasBegunPlay 는 그렇가면 게임이 시작 이후에는 무조건 true 가 될테니 시작 이후에 접속되면 무조건 bReplicatedHasBegunPlay 가 호출 될 것이고 시작 이전에 호출 되면 bReplicatedHasBegunPlay 호출이 안될 것이다 이렇게 이해해도 될까요?
최초 리슨서버 역활을 하는 클라이언트 의 로그가 출력시 스탠드얼론은 없고 전부 서버 로만 나옵니다. 스탠드얼론이 아닌 서버에서 로그인 시작/끝 , 포스트 로그인 시작/끝 이렇게 출력되는데 이건 엔진 업데이트가 되어 버전이 달라서 내부 로직 구조가 변경되어서 그런 것이다 라고 이해해도 될까요? 현재 버전은 5.6 입니다.