All Projects → changnet → MServer

changnet / MServer

Licence: other
Mini Distributed Game Server

Programming Languages

C++
36643 projects - #6 most used programming language
lua
6591 projects
c
50402 projects - #5 most used programming language
shell
77523 projects
CMake
9771 projects
Batchfile
5799 projects

Projects that are alternatives of or similar to MServer

miniDFS
Simple version of Distributed File System on multiple threads
Stars: ✭ 38 (-22.45%)
Mutual labels:  distributed
Watch-Attend-and-Parse-tensorflow-version
This is a tensorflow-based version of JianzhuZhang's Watch Attend and Parse model
Stars: ✭ 19 (-61.22%)
Mutual labels:  distributed
oxen-storage-server
Storage server for Oxen Service Nodes
Stars: ✭ 19 (-61.22%)
Mutual labels:  distributed
delta
DDD-centric event-sourcing library for the JVM
Stars: ✭ 15 (-69.39%)
Mutual labels:  distributed
Ray2
Orleans-based CQRS event-driven framework. distributed, ultra-high performance
Stars: ✭ 19 (-61.22%)
Mutual labels:  distributed
agent-python
Official python agent for using the distributed hashcracker Hashtopolis
Stars: ✭ 39 (-20.41%)
Mutual labels:  distributed
field-manual
The Offical User's Guide to OrbitDB
Stars: ✭ 178 (+263.27%)
Mutual labels:  distributed
server
Hashtopolis - A Hashcat wrapper for distributed hashcracking
Stars: ✭ 954 (+1846.94%)
Mutual labels:  distributed
v6d
vineyard (v6d): an in-memory immutable data manager. (Project under CNCF)
Stars: ✭ 557 (+1036.73%)
Mutual labels:  distributed
bbhtm
bare bone Hierarchial Temporal Memory
Stars: ✭ 14 (-71.43%)
Mutual labels:  distributed
slow-down
A centralized Redis-based lock to help you wait on throttled resources
Stars: ✭ 21 (-57.14%)
Mutual labels:  distributed
GoGetit
Go学习+面试通关, 覆盖Go程序员需要掌握的所有基础知识
Stars: ✭ 44 (-10.2%)
Mutual labels:  distributed
leafserver
🍃A high performance distributed unique ID generation system
Stars: ✭ 31 (-36.73%)
Mutual labels:  distributed
http bench
golang HTTP stress test tool, support single and distributed
Stars: ✭ 142 (+189.8%)
Mutual labels:  distributed
phalanx
Phalanx is a cloud-native distributed search engine that provides endpoints through gRPC and traditional RESTful API.
Stars: ✭ 192 (+291.84%)
Mutual labels:  distributed
iris
Distributed streaming key-value storage
Stars: ✭ 55 (+12.24%)
Mutual labels:  distributed
kvs
Highly available distributed strong eventual consistent and sequentially consistent storage with search
Stars: ✭ 15 (-69.39%)
Mutual labels:  distributed
distributed
Library to provide Erlang style distributed computations. This library is inspired by Cloud Haskell.
Stars: ✭ 49 (+0%)
Mutual labels:  distributed
dtail
DTail is a distributed DevOps tool for tailing, grepping, catting logs and other text files on many remote machines at once.
Stars: ✭ 112 (+128.57%)
Mutual labels:  distributed
ipns-link
Expose local http-server (web-app) through IPNS
Stars: ✭ 18 (-63.27%)
Mutual labels:  distributed

MServer

Mini Distributed Game Server(aka Mserver) is a lightweight game engine. It is designed to be flexible, efficient and easy to use. The engine core is written in C++ for high performance, and the game logic code is implemented in Lua scripts to ensure stability, reduce development costs, Increase development efficiency. The engine provides a lot of components commonly used in game development, such as navigation, pathfinding, database, etc. Developers can focus on game logic development instead of re-implementing these components. The engine is flexible and expandable. It can be deployed as a multi-process to adapt to MMO-type games, and can also be deployed as a single process for small games.

Dependencies

  • Linux
  • GCC (c++11 or above,check it here)
  • MariaDB
  • MongoDB
  • Lua (5.3 or above)
  • protobuf

Build & Usage

See it at Wiki

Features

  • Hotfix
  • Async log
  • RPC(bson RPC)
  • Lua OOP development
  • Scene(map、navigation、aoi)
  • AC algorithm words filter
  • Crypto(md5、base64、sha1、uuid ...)
  • JSON、XML serialize/deserialize
  • Network(Tcp、Http、websocket), with SSL and ipv6 support
  • Protocol auto serialize/deserialize(protobuf、FlatBuffers)
  • Async and coroutine sync DB operation for MariaDB、MongoDB

Process Architecture

+--------------------------------------------------+
|                                                  |
|              Lua Game Application                |
|                                                  |
+--------------------------------------------------+
|                                                  |
|              Lua C++ Driver                      |
|                                                  |
+--------------------------------------------------+
|              C++ Component                       |
| +--------------+---------------+---------------+ |  thread   +---------+      +----------------+
| |  SSL         |    Socket     |   Protobuf    | <----------->   Log   +------>   Disk Files   |
| +--------------+---------------+---------------+ |           +---------+      +----------------+
| |  Navigation  |   AOI         |  Timer        | |
| +--------------+---------------+---------------+ |  thread   +---------+      +----------------+
| | Crypto       |  JSON/XML     |  RPC          | <-----------> MariaDB +------> MariaDB Server |
| +--------------+---------------+---------------+ |           +---------+      +----------------+
| |              |               |               | |
| +--------------+---------------+---------------+ |  thread   +---------+      +----------------+
| | WordFilter   | FlatBuffers   |               | <-----------> MongoDB +------> MongoDB Server |
| +--------------+---------------+---------------+ |           +---------+      +----------------+
+--------------------------------------------------+

Note

Thanks

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].