|
8 | 8 |
|
9 | 9 | [](https://github.com/sniper00/moon/actions/workflows/windows-vs2022.yml) |
10 | 10 |
|
11 | | -# Demo |
12 | | -- [MoonDemo](https://github.com/sniper00/MoonDemo.git) |
13 | | - |
14 | 11 | # Moon |
15 | | -Moon is a lightweight online game server framework implement with actor model. One thread may have 1-N luaVM, they use message queue communication. There are many features for game server development: |
| 12 | +Moon is a lightweight online game server framework implement with actor model. One thread may have 1-N service(luaVM), they use message queue for communication. There are many features for game server development: |
16 | 13 |
|
17 | 14 | - Less core code, easy to learn |
18 | 15 | - Cross-platform (Windows, Linux, MacOS) |
19 | 16 | - Optimized networking |
20 | | - - tcp |
21 | | - - websockets |
22 | | - - http |
| 17 | + - Tcp |
| 18 | + - Websockets |
| 19 | + - Http |
23 | 20 | - Lua coroutine based asynchronous |
24 | | - - coroutine-socket |
25 | | - - timer |
26 | | - - inter luaVM communication |
27 | | - - inter cluster(process) communication |
28 | | - - redis/mysql/pgsql/mongodb async driver |
| 21 | + - Coroutine-socket |
| 22 | + - Timer |
| 23 | + - Service-to-service communication |
| 24 | + - Interprocess(cluster) communication |
| 25 | + - Redis/Mysql/Pgsql/Mongodb async client driver |
29 | 26 | - High performance and optimized Lua Json library |
30 | 27 | - Lua protobuf library |
31 | 28 | - Lua filesystem |
32 | 29 | - Recast Navigation |
| 30 | +- Lua zset library for ranklist |
| 31 | + |
33 | 32 | # OverView |
34 | 33 |
|
35 | 34 | ## Framework |
@@ -58,13 +57,20 @@ Moon is a lightweight online game server framework implement with actor model. O |
58 | 57 | https://github.com/sniper00/moon/releases |
59 | 58 |
|
60 | 59 | ```shell |
61 | | -# run echo server |
62 | | -./moon example/helloworld.lua |
63 | | -# another terminal run client(coroutine socket writed) |
64 | | -./moon example/helloworld_client.lua |
65 | | -# input any string |
| 60 | +# This is an example show put different services in one process |
| 61 | +./moon example/main_game.lua |
| 62 | + |
| 63 | +# Run test |
| 64 | +./moon test/main_test.lua |
| 65 | + |
| 66 | +# Run script in the example directory, e: |
| 67 | +./moon example/example_timer.lua |
| 68 | + |
66 | 69 | ``` |
67 | 70 |
|
| 71 | +## Demo |
| 72 | +- [MoonDemo](https://github.com/sniper00/MoonDemo.git) |
| 73 | + |
68 | 74 | ## Manual Build |
69 | 75 |
|
70 | 76 | 1. Make sure your compiler(msvc2019, gcc 9.3+, clang 9.0+) support for C++17 or [Install `C++17` Compiler.](https://github.com/sniper00/moon/wiki/Build#%E5%AE%89%E8%A3%85c17%E7%BC%96%E8%AF%91%E5%99%A8)。 |
|
0 commit comments