Giter Club home page Giter Club logo

mo.framework's Introduction

MO.Framework

介绍

可承载百万人同时在线的分布式游戏框架(同时支持websocket,socket和http)

软件架构

基于dotnetcore3.1,Orleans,Dotnetty跨平台的分布式游戏框架
模块分为:
MO.Login:登录服务器
MO.Api:http服务器
MO.Gate:支持socket和websocket
MO.Silo,MO.Interfaces,MO.Grains:基于Orleans的分布式服务

MO.Model:基于entityframeworkcore模块
MO.Protocol:基于proto3的协议 (与客户端共享代码)
MO.Common:基本工具模块 (与客户端共享代码)
MO.Algorithm:基本逻辑模块 (与客户端共享代码)

框架使用了
Orleans
https://github.com/dotnet/orleans
英文文档:https://dotnet.github.io/orleans/
中文文档:https://orleans.azurewebsites.net/
Dotnetty
https://github.com/Azure/DotNetty
Entityframeworkcore
https://github.com/PomeloFoundation/Pomelo.EntityFrameworkCore.MySql
CSRedisCore
https://github.com/2881099/csredis
Google.Protobuf
https://github.com/protocolbuffers/protobuf/tree/master/csharp
NLog
https://github.com/NLog/NLog

安装教程

使用说明

运行框架需要安装Mysql
在mysql中新建数据库命名为Orleans
在mysql数据库执行Database文件夹中的sql文件(Orleans需要)

(Model根据业务需要,定义数据库表结构)
Model模块中创建了两个数据库(Code First)
分别是MOData和MORecord
MOData是基本的业务数据库
MORecord是记录日志的数据库

(Redis根据业务需要,非必须模块)
Redis作为数据缓存使用
Redis 默认 用来存储基本业务数据 (自定义存储格式)

启动顺序
1.Silo
2.Gate
3.Api
4.Login
先检查json文件配置是否正确

正式环境配置NLog
将Share/NLog.Config中的Console打印注释
只保留Share/NLog.Config中的需要的打印等级
日志配置会影响严重影响运行效率

参与贡献

特技

mo.framework's People

Contributors

mmogdeveloper 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.