​ A highly scalable, high-performance, high-availability, cross-platform (Windows, Linux, MacOS) server-side framework. This framework is co-written using C++23 and Lua5.3 languages, surport c++ & lua coroutine feature, and the framework is split into the kernel layer, node layer and business layer to improve the scalability and maintainability of the program. Split business functions to run on different nodes to achieve decoupling of different functions and efficient utilization of resources. Using dynamic load balancing algorithms, tasks can be effectively distributed among different nodes to ensure system stability and performance. This project based on the NoahGameFrame. Although Ketoo has left us forever, his thoughts and soul will always be there.
Wiki: https://github.com/pwnsky/squick/wiki
Unity SDK: squick-unity-sdk
Unreal SDK: squick-unreal-sdk
Cocos SDK: squick-cocos-sdk
Backstage: squick-backstage
Web: squick-web
QQ Group:739065686
Version: 1.1.1
Click here quick start.
Wiki: https://github.com/pwnsky/squick/wiki
- [70%] Distributed services, each service communicates through the network, Surport K8s cluster to manage node, and can reduce server pressure through distributed + clustering methods.
- [100%] Use Lua to develop IO-intensive business code, and C++ to develop CPU-intensive services, which can be used to develop combat suits.
- [100%] The workload status of all nodes in the same region is self-synchronized.
- [80%] Provide stable services and ensure high availability of services.
- [70%] Optimize ultra-low CPU, memory, and network usage.
- [40%] It has standardized tests that allow developers to self-test various performance indicators (CPU, memory, network).
- [100%] Plug-in module combination turns development functions into plug-in modules for development and expansion.
- [60%] Support non-stop hot updates of business(c++/lua) code.
- [100%] When the program crashes in the Linux environment, the Dump Stack call chain is automatically written to the crash file.
- [100%] Network library adds C++ 20 coroutines.
- [90%] Supports cross-platform, can be compiled and developed on Windows and Linux and MacOS, and can support VS for project development on Windows.
- [100%] Supports changing 1 to N processes or N to 1 process. A single process on a physical machine can start all servers to facilitate development and debugging. Start single or multiple servers on different physical machines.
- [100%] It has relatively complete automation tools, such as automated code generation, compilation, packaging, deployment, cleaning, etc.
- [80%] Supports mainstream protocols, such as HTTP/HTTPS, Websocket, TCP, UDP, KCP, etc.
- [10%] Remote debugging console.
- [100%] Has client sdk for Unity and UnrealEngine.
- [100%] High availability - database proxy server, supports mainstream MongoDb, Mysql, Redis, Clickhouse databases etc.
Connections
RPC communication method between servers