묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
6:00
릴리즈 모드로 해도 디버그 모드랑 동일하게 출력되는데 뭐가 문제인가요? using System.Threading;namespace ServerCore{ internal class Program { // 전역이기 때문에 쓰레드들이 동시에 접근 가능 static bool _stop = false; static void ThreadMain() { Console.WriteLine("쓰레드 시작!"); while(_stop == false) { // 누군가가 stop 신호를 해주기를 기다린다 } Console.WriteLine("쓰레드 종료!"); } static void Main(string[] args) { // Thread t = new Thread(ThreadMain); Task tt = new Task(ThreadMain); tt.Start(); // 1초 존야 후 다시 실행 Thread.Sleep(1000); _stop = true; Console.WriteLine("stop 호출"); Console.WriteLine("종료 대기중"); tt.Wait(); // t.Join(); 과 동일 Console.WriteLine("종료 성공"); } }
-
해결됨외워서 끝내는 네트워크 핵심이론 - 응용
망중립성의 원칙 설명에서 ISP가 차단하는 기준
안녕하세요! 우선 질 좋은 강의에 감사인사 부터 드립니다! (__)섹션 0의 4번째 강의 내용 속 망중립성의 원칙을 설명해주시면서 ISP가 특정 도메인의 (웹)서버를 차단, 엄밀히 말하면 ISP가 클라이언트에게 거짓된 응답을 제공해줌으로써 클라이언트가 해당 웹서버에 접속하지 못하도록 하는 구조를 설명해주셨는데요! 그렇다면 ISP가 자체적으로 추가하지는 않는다고 하셨고, 어쨌거나 정부(?)같은 중앙기관에서 ISP가 차단시킬 웹서버 목록들을 지속적으로 관리하고, 계속 목록을 추가시키기도 할텐데.. 그러면 ISP가 차단시킬 때의 웹서버를 식별하는 기준은 도메인 주소? 아니면 IP주소로 관리하는 걸까요? 예를 들어, 오늘은 ISP가 차단해야 할 도메인 주소들이 www.a.com, www.b.com 이었는데, 시간이 지나면서 www.c.com 과 같은 다른 도메인 주소들이 추가될 것 같은데.. 이걸 사람이 수동으로 추가하겠죠..? 그리고 이것들을 도메인 주소로 관리하는지, IP 주소로 관리하시는지 아시나요? 혹시 질문이 이해가 가시지 않으신다면 말씀 주세요! 감사합니다 :)
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
클라이언트
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]PUT과 POST의 차이점을 보고있었습니다.여기서 나오는 클라이언트가 직접 리소스의 URI를 지정한다. 를 보고 드는 생각이 클라이언트의 정확한 정의에 대해 알고 싶습니다.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
강의연장해주세요
감사합니다.
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
서버에만 호출된다는것과 소유한 서버에서 호출된다는 의미
"서버에만" 과 "소유한 서버" 에서 호출된다는 차이가 정확히 무엇인지 알 수 있을 까요?
-
미해결AWS Certified Cloud Practitioner 자격증 준비하기
38번 문제 질문
AWS Outposts가 있었다면 답일까요 ?10분 13초에 온-프레미스에서 AWS 서비스를 실행하게 해주는 서비스라고 해서, 헷갈리네요강의 내용중에Snowball Edge와 Outposts 차이를 알 수 있는 곳이 있을까요 ?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
URI 설계원칙과 rest API
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 강사님께서 말씀해주신 URI를 설계할때는 리소스만 식별하라는 말씀이 제가 공부했던 rest api의 특징과도 비슷해서 궁금증이 생겨 질문 드립니다. 그러면 혹시 설명해주신 URI 설계 원칙이 rest api의 특징이라고도 볼 수 있는 걸까요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
ReaderWriterLock은 반드시 재귀적으로 호출되어야 하나요?
만약 한 쓰레드에서 ReadLock과 WriteLock이 전부 호출된다고 했을 때 반드시 호출의 역순으로 Unlock을 호출해야 되나요? 아래는 C#에 구현돼있는 ReaderWriterLockSlim 클래스를 사용하여 실행한 예시입니다.class Program { static ReaderWriterLockSlim _lock = new ReaderWriterLockSlim(LockRecursionPolicy.SupportsRecursion); static void Main(string[] args) { Task.WaitAll( Task.Run(() => { _lock.EnterWriteLock(); _lock.EnterReadLock(); Thread.Sleep(5000); _lock.ExitWriteLock(); _lock.ExitReadLock(); })); } }WriteLock -> ReadLock -> WriteUnlock -> ReadUnlock 순으로 호출했고 정상적으로 작동합니다.강의에서 구현한 ReaderWriterLock을 사용해도 예외가 발생하지는 않습니다만 위의 순서로 호출하면 flag가 엉망이 됩니다.public void WriteUnlock() { int lockCount = --_writeCount; if (lockCount == 0) Interlocked.Exchange(ref _flag, EMPTY_FLAG); }동일한 쓰레드가 ReadUnlock을 호출하지 않은 상태에서(즉 read count가 0이 아닌 상태에서) WriteUnlock을 호출할 경우 flag가 0으로 초기화되기 때문에 이후에 ReadUnlock을 호출할 경우 flag가 -1로 초기화됩니다. 제가 생각하기엔 굉장히 특이한 케이스고 실제로 함수가 재귀적으로 호출되기 때문에 발생할 일은 없다고 보는데요...혹시라도 휴먼에러로 위와 같은 상황이 벌어질 경우를 대비해서 예외를 추가하거나 WriteUnlock 로직을 수정해서 'EMPTY_FLAG'가 아닌 '_flag & READ_MASK'를 대입하면 어떤가요?
-
해결됨인프라공방 - 그럴듯한 서비스 만들기
sql 2번 쿼리 정답이 궁금합니다
정답 예시에서는 91개가 조회되는데 제가 생각한 쿼리는 89개만 조회가 됩니다. 쿼리가 잘못된걸 까요?SELECT c.customerId `고객아이디`, c.customername as `고객이름`, sum(Quantity) as `주문량` FROM OrderDetails od join Orders o on o.OrderId = od.OrderId join Customers c on c.customerId = o.customerId group by o.customerId order by sum(Quantity) desc ;
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
sameSite 와 도메인설정 차이점
서버에서 쿠키를 생성할때 도메인을 설정하는 이유는?만약 클라이언트가 다른 도메인에서 요청한것이라면 서버가 쿠키를 응답 자체를 안해주는걸까요?서버에서 쿠키 생성시 samesite를 설정하는 이유는?클라이언트가 쿠키를 먼저 서버로 부터 받은후, 다시 다른 api 요청시에 나의 도메인과 쿠키에 설정된 도메인이 다른 경우 막으려고 하는건가요?2가지 차이점에 대해 명확히 좀 알려주셨으면 ㅠㅠ
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
호스트..
이해가 안갑니다..서버는 하나의 아이피를 가지자나요?그런데 지금 상황은 도메인을 여러개 등록할때 당연히 같은 아이피로 등록했다는거자나요?그런데 서버에서 저 호스트 정보가 왜 필요한걸까요?현재 서버에서 어플리케이션 3개가 띄어져있다고하면3개는 모두 포트가 다를수밖에 없습니다그러면 클라가 요청시에 포트만 다르게 요청하면 되는 것인데굳이 호스트가 왜 필요한걸까요?..
-
미해결그림으로 쉽게 배우는 네트워크
[BGP] AS 내부의 특정 라우터를 가기 위한 방법
강의 BGP 4:36에서 'AS 내부 경로는 모르는데 어떻게 전달하나요' 라는 내용이 있는데, 이는 양끝의 ASBR이 서로 데이터를 전달하는 방법에 대해 설명해주신 거 였습니다 AS 내부의 특정 라우터에 접근하기위해선 이 라우터가 어떤 AS에 속해있는지 알아야지 BGP를 이용해서 그 AS 까지 갈텐데요,어떤 AS에 속해있는지는 어떻게 알 수 있나요?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
rest api설계 디자인에 관하여
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요. 현재 프로젝트로 스케줄러 rest api 개발을 하고 있습니다.하지만 rest api 설계 중 어떤 형식으로 설계해야 좋은 설계가 될지 고민이 들어 질문 드립니다. 스케줄러 시나리오는 다음과 같습니다.유저A가 여러 유저들과 그룹a'를 만들고 그룹a'에서 스케줄을 생성할 수 있습니다.유저A는 모든 약속을 한번에 모아볼 수 있고, 또는 그룹a'의 방에 들어가서 그룹a'의 스케줄을 볼 수 있습니다.1번 /user/{userId}/schedules : 유저의 모든 스케줄/group/{groupId}/schedules : 그룹의 모든 스케줄/schedules/{scheduleId} : 상세 스케줄 2번/schedules/user/{userId} or /schedules?userId= 유저의 모든 스케줄/schedules/group/{groupId} or /schedules?groupId 그룹의 모든 스케줄/schedules/{scheduleId} 상세 스케줄 어떤 방식이 좋은 방식인가요?1번은 계층적 구조에 중점을 두었다 생각하고 2번은 리소스에 대한 가시성이 좋다고 생각이 듭니다.웹페이지를 라우팅할때는 1번 rest api를 설계할때는 2번 방식을 무심코 썼었던거 같은데 둘의 URL매핑 구조는 달라야 하는게 맞는건가요? 글이 두서가 없어 죄송합니다! 아직 지식에 부족함이 많아 정리가 잘 안되네요.
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
host 강의 영상이 안 올라와있는 것 같습니다.
어디다 문의할지 몰라 여기다 씁니다! host는 이렇게 외우자 부분만 영상이 안나오네요 해결 후 본 글은 삭제하겠습니다.
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
순수 html을 사용하지 않을떄도 url를 이용하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]앱 클라이언트나 Ajax? 라고 부르셨던 리액트도 url를 이용하여 json 데이터를 서버와 통신을 하나요?URL를 이용하지 않으면 어떤 방식을 이용하나요??
-
해결됨AWS Certified Solutions Architect - Associate 자격증 준비하기
강사님 수강 연장 부탁드립니다.
강사님 안녕하세요.좋은 강의 잘 듣고 있습니다.마음만 급해서 강의만 틀어놓았네요.아직 시험 응시를 못한 상태인데, 혹시 수강 연장 부탁드려도 될까요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
node 안에 있는 data 타입을 shared_ptr 로 하는 이유?
제 생각에는 락프리 스택 만들 때도 그렇고 이번 강의 큐도 그렇고 노드 안에 있는 data 타입을 그냥 T data 라고 해도 될 것 같은데 굳이 shared_ptr로 하는 이유가 있을 까요?shared_ptr 로 하면 메모리 비용과 시간 비용이 더 드는것으로 알고있는데요! 별 이유는 없을까요
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Mac OS 쓰레드풀 사용 문제 질문드립니다. (11:12)
위쪽에도 같은 맥북 질문이 있는것으로 확인 하였는데 해결방법을 모르겠어서 질문드립니다. 쓰레드가 Console.WriteLine까지는 진입을 하지만 출력이 되지는 않는 문제가 발생합니다.또한 중간에 쓰레드가 전부 사라져버리고 디버깅이 더이상 진행되지 않는 문제가 발생합니다.
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
PacketSession에서 buffer.Count와 dataSize의 비교
안녕하세요 PacketSession에서 if (buffer.Count < dataSize) break;이 부분의 코드가 왜 필요한지에 대해서 의문이 생겨 질물 남깁니다 예를들어 100바이트 크기의 버퍼가 OnRecv매개변수로 들어왔고 해당 100 바이트가 5가지 패킷의 정보를 들고 있다고 했을 때하나의 패킷을 처리할 때 마다 해당 크기의 dataSize만큼 buffer크기(Count)가 갱신 될텐데 그렇게 된다면 위의 조건에는 들어오게 될 일이 전혀 없게 되는거 아닌가요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 기간 연장 부탁 드립니다.
안녕하세요, 좋은 강의 올려주셔서 감사합니다.수강 일정 연장 해주시면 감사하겠습니다.