인기 포스트
-
[.NET] C# DotNet으로 TCP 소켓 서버 열어보기
> D-15 | Dedicated Server 구축을 위한 조사 및 테스트용 코드를 작성했다. 학습 키워드: C#, DotNet, Socket 프로젝트 진행 사항1) Pathfinding Dedicated Server 구축을 위한 사전 학습: 현재 진행중인 게임 서버 프로젝트(The Last Rollback)는 Unity 클라이언트 게임과 연결된다. 클라이언트에서는 Unity의 NavMesh로 pathfinding을 진행하고 있는데, 개발 초기에 서버에 이를 올려둘 마땅한 방법을 찾지 못해서 클라이언트 주도로만 이루어지고 있다. 이전에 이 문제를 해결하기 위해 토의해서 나온 결론은 pathfinding 만을 담당하는 dedicated 서버를 구축하는 것이었다. C#으로 서버를 개발해야 하다보니 MVP 기..
-
스파르타) The Last Rollback (D-13, Node.js 게임 서버 최종 프로젝트) - DotRecast
> 과제 진행 간 완료한 사항 및 문제점과 해결 과정을 정리해보았다. 학습 키워드: Unity, C#, NavMesh, Recast & Detour, DotRecast 1. Progress1) Unity NavMesh 정보를 추출하여 obj 파일 생성하기:using System.IO;using System.Text;using UnityEditor;using UnityEngine;// Obj exporter component based on: http://wiki.unity3d.com/index.php?title=ObjExporterpublic class ExportNavMeshToObj : MonoBehaviour { [MenuItem("Custom/Export NavMesh to mesh")] ..
-
[Docker] Fluent Bit 세팅해보기 (짧)
학습 키워드: fluent bit, docker, windows 11 Docker를 이용하여 Fluent Bit 세팅해보기1) What is it?: Fluent Bit은 EFK 스택에서 로깅을 담당하는 Fluentd의 경량화된 버전이다. 2) How does it work?: 이 과정은 Windows PowerShell을 사용하여 진행했다. 우선 docker 명령어를 사용하여 fluent-bit의 latest 버전 이미지를 pull 해준다. 이미지 다운로드가 완료되면 Figure1과 같은 메세지가 출력되고, Docker Desktop의 Images 탭에서 설치된 이미지를 확인할 수 있다. 해당 이미지를 바로 실행할 수도 있으나, 아래와 같이 fluent-bit.conf 파일을 정의하여 변경한 ..
-
[WSL] WSL 설치 후 WiFi 연결이 안되는 문제 (Windows 11 Home)
> Docker Desktop을 설치하다가 발생했던 WiFi 연결 문제를 해결하는 과정을 정리해보았다. 학습 키워드: WSL, Docker Desktop, vEthernet, Hyper-V WSL 설치 후 Wifi 연결 안되는 문제1) What is it?: Docker desktop 설치 이후 와이파이 연결이 끊어지고 cmd에서 ipconfig /all을 사용해도 무선 어댑터가 인식되지 않는 문제가 있었는데, 실제 원인은 WSL이 사용하는 가상 어댑터 기본 설정이 제대로 되어있지 않아서였다. 이를 해결한 과정을 정리해보았다. Figure 2 처럼 Hyper-V 관리자(없으면 링크를 따라 설치)를 검색하여 실행하면 우측에 Figure 3과 같은 탭이 있다. 여기서 '가상 스위치 관리자'를 선택한 뒤 ..
-
Bull 라이브러리 (Node.js)
> 최종 프로젝트 진행 전 기획 단계에서 사전학습으로 Bull 라이브러리에 대해 간략하게 조사해보았다. 학습 키워드: Node.js, Bull Queue 1. Bull1) What is it?: Bull은 Redis 기반의 Queue 시스템이다. Redis에서도 자체적으로 Queue를 지원하지만, low level의 디테일을 신경 쓸 필요 없도록 API화 시켜둔 라이브러리라고 할 수 있겠다. 2) How does it work?: npm install bull --save (NPM 설치) // my-first-queue 가 instantiation name이 된다.const bullQueue = new Bull('my-first-queue'); Bull 클래스 생성자에 인자로 instance 이름을 ..
-
[Node.js] Stream과 Back Pressure
학습 키워드: Node.js, Stream, Back Pressure, Socket 1. Stream1) What is it?: 연속적인 데이터 흐름을 처리하는 방식으로, 한 번에 모든 데이터를 메모리에 올리지 않고, 작은 단위의 청크(Chunk)로 나누어서 처리하여 메모리 사용을 최소화 함으로써 성능 최적화를 달성하는 방법이다. Node.js에서 스트림은 크게 다음의 네 가지로 나뉜다.Readable Stream: 데이터를 읽을 수 있는 스트림 (File System의 read stream이나 HTTP 요청). Writable Stream: 데이터를 쓸 수 있는 스트림 (File System의 write stream이나 HTTP 응답)Duplex Stream: 읽기와 쓰기가 모두 가능한 스트림 (TCP..