The API server layer lets an AkkEngine instance accept requests across a process or network boundary. It is still part of the low-level engine surface: callers send byte keys and byte values, and the server forwards those operations to the same engine APIs used by embedded code.
Use it when another process, language runtime, test tool, or service boundary needs to reach the engine without linking directly to the C++ API. If your application already runs in the same C++ process, direct AkkEngine calls are simpler and avoid protocol overhead.
The server code lives under akkara/akkserver/ and is licensed separately under AGPLv3. Check that boundary before packaging or redistributing server-enabled builds.
Read By Goal
Section titled “Read By Goal”| Goal | Page |
|---|---|
| Start the server and call it from clients | API Server Usage |
| Understand transports, framing, limits, and runtime shape | API Server Architecture |
Transport Summary
Section titled “Transport Summary”| Transport | Best fit |
|---|---|
| HTTP | Manual testing, local tools, scripting, and simple service integration. |
| TCP | High-throughput clients that can implement AK5 binary framing directly. |
| gRPC | Typed service clients when the build includes the gRPC backend. |
All transports expose byte-oriented key/value operations. The HTTP API is not a JSON REST API: reads return raw bytes, counters are little-endian binary values, and many mutation endpoints return 204 No Content.