Coder Social home page Coder Social logo

com2us_project's Introduction

Com2us_Project 소개

  • 컴투스 서버 캠퍼스 2기 프로젝트입니다.
  • 온라인 오목 게임을 제작하였습니다.

목표

  • 캠퍼스 실장님의 지식을 최대한 많이 배워서 프로젝트에 적용하기
  • 내가 가진 지식과, 현업에서의 지식 적응 차이를 비교하며 프로젝트 진행
  • 실장님의 요구사항들을 최대한 반영하기

설명

  • 개발 기간 : 2024.04.08 ~ 2024.05.23 (7주)

전체 아키텍처

alt text alt text

기술 스택

  • Language
    • C#
  • Framework
    • ASP.NET Core 8
  • Database
    • MySQL
    • Redis
  • Common
    • Docker
    • AWS
  • Library
    • MySqlConnector (MySQL)
    • SqlKata (MySQL)
    • CloudStructures (Redis)
    • SuperSocketLite (Socket Library)
    • MemoryPack (Binary)
    • ZLogger
    • NLog

폴더 설명

Hive Server

  • ASP.NET Core 8버전으로 제작된 API 서버입니다.
  • 유저 정보를 총괄하는 서버입니다.
  • 회원가입, 로그인 등 유저의 정보를 저장하는 기능을 하고 있습니다.
  • 하이브 서버 폴더

API Server

  • ASP.NET Core 8버전으로 제작된 API 서버입니다.
  • 게임 API 서버로써, 오목 게임의 API 기능을 담당하는 서버입니다.
  • 게임 API 서버 폴더

MatchMaking Server

  • ASP.NET Core 8버전으로 제작된 API 서버입니다.
  • 매칭용 API 서버로써, Redis의 List 기능을 활용하여 게임 Socket 서버와 매칭 성공 정보를 주고 받습니다.
  • 매칭 API 서버 폴더

Game Server

  • C#으로 제작된 Socket 서버입니다.
  • 오목 게임 로직을 담당하는 서버로써, 유저의 게임 플레이를 담당하는 서버입니다.
  • 게임 소켓 서버 폴더

Omok Client

  • C#의 Winform으로 제작된 오목 클라이언트입니다.
  • 서버 캠퍼스 실장님의 기본 오목 클라이언트 코드를 토대로 수정하여 제작하였습니다.
  • 클라이언트 서버 폴더

Docker

  • 서버들을 도커 컨테이너로 올리기 위한 compose 파일과, Dockerfile를 모아놓은 폴더입니다.
  • 도커 폴더

Thirdpary

  • 기타 라이브러리들을 모아놓은 폴더입니다.
  • GameCommon의 경우, 클라이언트와 소켓 서버가 함께 사용하는 데이터들을 모아놓은 라이브러리입니다.
  • GameCommon 폴더

추후 해볼것들

  • 해당 내용들은 캠퍼스 실장님께서 추천해주신 내용들입니다.

C#

  • 매칭 서버
    • 매칭 요청자 중에서 서로 비슷하 실력의 플레이어를 매칭 시키기
  • 오목 게임 서버
    • 재접속
    • 게임 아이템 사용하기
    • 관전자 허용
  • 더미 테스트
    • nGrinder 혹은 자체 더미 클라이언트로 성능, 안전 테스트 하기
  • 서버 모니터링
    • 프로메테우스 & 그라파나 모니터링
  • API 서버
    • 서비스 중인 모바일 게임에서 구현된 기능들 구현
  • 개인적으로 해볼 것
    • C# 네트워크 라이브러리를 직접 구현하여 연동하기

C++

com2us_project's People

Contributors

hong-study avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.