묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨CloudNet@ - Amazon EKS 기본 강의
ingress 도메인 연결 문의
Warning FailedAddFinalizer 10m (x12 over 10m) ingress Failed add finalizer due to Internal error occurred: failed calling webhook "vingress.elbv2.k8s.aws": failed to call webhook: Post "https://aws-load-balancer-webhook-service.kube-system.svc:443/validate-networking-v1-ingress?timeout=10s": no endpoints available for service "aws-load-balancer-webhook-service"정상적으로 연결은 된 것 같은데 ingress에 해당 이벤트가 나오는건 왜그럴까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
따로 쓰레드를 만들지 않았는데 멀티쓰레딩 하는 이유
지금 Command 패턴강의 까지 수강중인데,멀티쓰레드 파트에서 배웠던 락 처리는Thread t 이렇게 만들고 시작해야멀티쓰레드 환경으로 변하는걸로 알고있습니다 하지만 지금까지 보면멀티쓰레드를 고려하여 락을 계속 추가해주고 있는데요args.Completed += new EventHandler<SocketAsyncEventArgs>(OnAcceptCompleted)이것때문에 다른 쓰레드들이 풀리기 시작한건가요?궁금합니다
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
PUT으로 파일 덮어쓰는 것에 대한 질문이 있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]HTTP API 설계 예시 강의를 들으면서 든 궁금증이 있습니다.스토어 방식으로 URI를 설계하면, /files/{fileName} -> PUT이런식으로 파일을 클라이언트가 덮어 씌워주는 것으로 이해했습니다. 그런데, D드라이브의 file 이라는 디렉토리에 파일이 저장된다고 했을때, fileName은 유저가 설정한 파일이 아니라 UUID를 붙여서 새롭게 파일명을 만들어 저장한다고 MVC 2편 강의에서 배웠습니다. 그러면 fileName으로 덮어 씌우는것이 사실상 불가능 한것이 아닌가요?? 왜냐하면, UUID를 실제 생성할때마다 다르게 생성되는데... 처음에 image.png를 업로드 했을때, 123-123.png라고 저장되어도 다음에 image.png를 업로드 했을때, 123-124.png로 파일명이 만들어지면 123-123.png가 덮어씌워지는 것이 아니라, 123-124.png라는 새로운 파일이 생성될것 같습니다. 혹시 제가 잘못 이해한 부분이 있다면 알려주세요ㅠ
-
미해결CloudNet@ - Amazon EKS 기본 강의
ingress 외부 dns 설정
안녕하세요.ingress를 통한(alb) 외부 dns 설정이 잘 안되는데 방법 알려 주실 수 있을까요? 여러 애플리케이션을 포트 단위로 서비스 하려 합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
식별자 및 헤더 에러
2022버전인데정의는 되어있으나 특정 tcp/ip함수들을 식별하지 못하는 현상이 있습니다.(헤더가드 다 하였음)제 경우에는 inet_ntop 함수 단 하나만 컴파일러가 식별하지못하는 에러가있어서 stackoverflow나 reddit을 찾아도 원하는 상황에 및 해결법은 나오지않아pch.h환경에서 쓰기때문에 GlobalPch.h 에서#include <WinSock2.h>#include <mswsock.h>#include <ws2tcpip.h>#include <windows.h>4가지 헤더를 이 순서대로 배치하고 프로젝트 별 헤더에서는 위의 4가지를 선언하지않으니 해결되었습니다.혹시나 특정함수 단 하나만 식별되지않거나하면 시도 해보시기 바랍니다.저는 시간날렸어도 누군가는 금방 해결해서 다음step으로 빠르게 가길 빕니다.
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Session#2, 3의 SendQueue의 Lock에 관한 질문
Send에 관한 비동기 처리에서 Send 메소드에서 Queue에 넣어주고, RegisterSend에서 Deque 하는데,Send 메소드에서는 Enqueue하면서 lock을 걸어주는데, RegisterSend에서 Dequeue 할 때는 lock이 없어서요.Enqueue 하는 동안 Dequeue 한다거나, Dequeue 하는 동안 Enqueue 하는 등의 문제는 발생하지 않나요?
-
해결됨AWS Certified Solutions Architect - Associate 자격증 준비하기
실전문제 강의와 강의노트 불일치 문제
강의는 실전문제풀이 20강까지 있는데, 강의노트는 왜 실전문제풀이 16까지 밖에 없나요?
-
해결됨실습으로 배우는 핵심 네트워크 기술
VPN 이해와 실습 수업 자료 문의
실습 자료에서 ISP-R1 , ISP-R2 에 대하여 패스워드가 걸려있는데 패스워드는 무엇인가요 ?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
스핀 락에서 CPU 점유율 관련한 질문입니다!
안녕하세요!스핀이 계속 되면서 CPU 점유율이 치솟는 문제에 대한 대안으로 sleep_for(1ms)를 호출하는 건 어떻게 생각하실지 궁금합니다.질문을 다 하고 나니, 커널의 도움을 굳이 받지 않고 오래 대기하지 않아도 되는 상황이 보장될 때 사용하면 좋은 락이 스핀 락인데 sleep_for()을 하면 컨텍스트 스위칭이 발생하겠네요. 이렇게 되면 스핀 락을 쓰는 이유가 퇴색될 것 같다는 생각이 듭니다.고견 부탁드립니다🙏
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
TLS 관련하여 질문 드립니다.
TLS를 사용하면 공용 공간에 있는 데이터를 최대한 많이 자신의 쓰레드로 가져와서 각각 처리하고 다시 돌려주는걸로 이해를 했는데 그럼 나중에 각각의 쓰레드에서 처리하고 난 결과가 서로 상충되는 경우가 나타날수도 있지 않나요?아니면 한명씩 싱글 쓰레드로 처리하는데 가져오는 데이터 양이 많아져서 처리속도가 빨라지는것이라고 이해해야 할까요? 1Rookiss2021.03.15데이터를 갖고 간다는게 의존성이 서로 묶여 있는 데이터를각자의 TLS로 갖고 가라는 것이 아니고독립적으로 사용할 수 있는 (Buffer라거나) 데이터를 갖고 가는 것이라 상관없습니다.그리고 애당초 TLS에 자신만 사용할 객체를 할당할 수도 있구요.위 글에 대하여 이렇게 답변을 주셨습니다.이에 대하여 궁금한 점이 독립적으로 사용할 수 있는 데이터를 갖고 가서 처리하는 것이라면 TLS를 사용하지 않고도 처리하면 되는 것이 아닌가요?위 과정에서 처리한 정보들이 계속해서 저장되어야 하기 때문에 TLS가 의미가 있는 것인지.. lock을 걸어 처리하고 있는 복잡한 일(의존성 있는 데이터?)을 가져와서 각자 처리한다는 내용이 잘 이해가 안되네요 ㅠㅠ
-
미해결AWS Certified Cloud Practitioner 자격증 준비하기
섹션 6 로드밸런스 : 인스턴스 생성 후 문제
안녕하세요 선생님인스턴스 두개를 생성했는데퍼블릭 IPV4 주소를 통해 새창에서 접속하려는데 안열려요...바쁘시겠지만 체크리스트나 점검사항말씀해주시면 조치해볼게요..
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
(Interlocked) Race condition에서 number가 0이 되는 경우가 너무 신기합니다.
Interlocked 강의 부분에서 전역 변수 number = 0에 대해Thread 1은 for문으로 number++Thread 2는 for문으로 number-- 여기서 Thread 두 개가 race condition으로 인해 반복횟수가 많아지면 number를 가져오고, 연산하고 대입하는 과정에서 원자성이 보장되지 않아 number가 변한다고 설명하셨는데요. 오히려 그러면 for문에서 1만번의 반복 과정에서는 number = 0 으로 제대로 나타났는데, 그게 이해가 되지 않습니다. 반복 과정에서도 각 Thread가 race condition이기 때문에 number가 변동할 것 같은데, 제 컴퓨터로 돌려봐도 어느정도 연산량이 적으면 number = 0으로, 이상하게 올바르네요. 이유가 무엇일까요? Thread 2가 실행되기 전에, 컴퓨터의 연산이 빨라서 Thread 1에서 number를 1만번 ++의 계산이 끝나는 걸까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
WriteLock이 기존 진행 되는 ReadLock이 끝남을 기다리는 과정에 대해서 질문드립니다.
int desired = (Thread.CurrentThread.ManagedThreadId << 16) & WRITE_MASK; while (true) { for(int i = 0; i < MAX_SPIN_COUNT; i++) { if (Interlocked.CompareExchange(ref _flag, desired, EMPTY_FLAG) == EMPTY_FLAG) return; } Thread.Yield(); } desired 부분에서 마스크를 통해 WriteThreadId를 제외하고 밀어버린 뒤 Interlocked부분에서 비교를 통해 ReadLock과 WriteLock이 없는지 비교하고 있습니다. 위 과정에서 만약 먼저 ReadLock이 잡혀있다면 ReadLock이 풀릴 때 까지 기다리게 되는데 만약 끊임없이 Read가 일어나 ReadLock이 풀리는 틈이 없어 Write가 되지않는 극단적인 경우는 일어나지 않는건가요? 혹시라도 일어나지 않는다면 Read 하는 과정이 매우 짧기 때문에 그런 일이 발생하지 않는 것인지 궁금합니다.
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
콘솔창 특수문자 겹침
안녕하세요. [배열 실습] 강의위와 같이 문자가 겹쳐서 나오는데 해결 방법 알 수 있을까요?다른 분께서 올려주신 모든 글꼴 표시도 해보려고 했으나,저장만 하면 체크가 해제되어서 적용이 되지 않습니다.
-
미해결CloudNet@ - Amazon EKS 기본 강의
연장
안녕하세요 개인적인 사정으로 이제야 강의를 들어보려하는데 기간이 끝나가서 혹시 연장이 가능할가요 ? 부탁드립니다!
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
페이로드 헤더?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]content - length가 표현 헤더가 아니라 페이로드 헤더라고 하셨는데, 이것의 의미가 무엇인가요? 표현데이터는 전송하는 실제 데이터인데, 이것의 길이가 왜 표현과 무관한 건지 이해가 안갑니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
데드락 이렇게 이해했는데 맞을까요?
class SessionManager { static object _lock1 = new object(); public static void Test() { lock (_lock1) { UserManager.TestUser(); } } public static void TestSession() { lock (_lock1) { } } } class UserManager { static object _lock2 = new object(); public static void Test() { lock (_lock2) { SessionManager.TestSession(); } } public static void TestUser() { lock (_lock2) { } } 강의에는 두 클래스에 같은 _lock 써서헷갈려서 lock1, lock2 로 나누었습니다. SessionManager.Test();하려면lock1을 열고 들어가서 lock2를 열어야함. UserManager.Test();하려면lock2을 열고 들어가서 lock1을 열어야함 예를 들어,t1이 lock1을 열고 들어가서 TestUser()을 하려고 했지만,하필 t2가 lock2를 열자마자 들어갔을경우t1은 lock2가 잠겨있어서,t2는 lock1이 잠겨있어서둘다 아무것도 못하는 상황 =무한 대기 걸려서 프로그램이 멈춘것 처럼 보이는 데드락 상황 이렇게 이해했는데 맞을까요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
실전문제 12회 28번 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. KMS 는 보안 인증서를 관리하고 저장하는 솔루션이 아닌데 문제에서는 인증서를 암호화하고 해독할 수 있는 솔루션을 원한다 하였습니다. 인증서를 저장하고 관리하는 것은 Secrets Manager니까 답이 2개가 되어야 하는거 아닌가요? 보안 인증서를 저장한다는 내용은 문제에 나와 있지 않고 "데이터가 암호화 된 후 " 라는 내용만 있으니 A와 C가 복수 정답이 되어야 하는거 아닌가요? C 만 답이긴 어려운거 아닌가요? 인증서를 암호화하고 해독한는 것도 KMS가 할 수 있는건가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
쓰레드의 작업 순서가 너무 헷갈립니다.
안녕하세요. 강의 잘 보고 있습니다. 질문 드립니다.t1, t2 두 개의 쓰레드를 만들고 실행시켰습니다.t1.Start();t2.Start(); Start()라는 함수가 쓰레드 클래스 말고 싱글 쓰레드 개발환경에서의 그냥 아무 함수라고 가정한다면,t1.Start()가 먼저 실행되고Start함수가 끝날때 까지 기다린 후t2.Start()가 먼저 실행되는게 '문법적으로' 맞잖아요?? 하지만 쓰레드 클래스의 경우에는t1.Start() 가 들어왔을때는t1 쓰레드한테 어떤 일을 실행 시킨 후t1이 작업 끝나던 말던바로 다음줄 코드를 실행 시키는건가요?즉, t2.Start() 를 실행 시키는건가요?그렇게 해서 각 쓰레드(일꾼)이 작업을 하다 여러문제들이 생기는거구요 멀티 쓰레드 개발환경에서 일어날 수 있는 문제점은확실하게 이해하고 있는데,제일 첫 부분인 이게 도통 이해가 안돼서 질문 남깁니다.그동안 해오던 코딩이 부정당하는 기분이라...쓰레드 클래스만 저런식으로 작동된다는 정보가 어디에도 없네요..문법적으로 저렇게 된다고 확신이 필요합니다 ㅠㅠ 요약하자면, 컴파일러는 'Start 함수' 를 만나게 될 경우그 쓰레드한테 작업을 실행시키지만,그 쓰레드의 작업을 기다려 주지는 않고바로 다음 줄 코드를 실행 시키는건가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
안녕하세요 루키스님 코드 라이선스 관해서 질문드립니다.
과거에 해당 강의로 공부하고 최근에 다시 복습 중인데 혹시 코드 라이선스가 어떻게 될까요?외주 작업을 받게 돼서 네트워크 관련 코드를 작성하려고 하는데 문제가 생길 수 있을 거 같아 질문드립니다.덕분에 공부 너무 잘 하고 있습니다. 감사합니다.