Standalone
Standard wire protocols. Full server deployment.
Wraps any database module with a full network server supporting standard wire protocols. PostgreSQL, Redis RESP3, MongoDB Wire, Bolt, DynamoDB REST, and S3 REST.
Standalone wraps any WeftKit database module with a full network server that speaks standard wire protocols. Instead of embedding the database in your application, you run it as a separate process that existing database clients can connect to — no code changes needed.
Standalone supports every wire protocol that the 8 database modules expose: PostgreSQL v3 for Relational, Redis RESP3 for InMemory, MongoDB Wire for Document, Bolt for Graph, DynamoDB REST for KeyValue, gRPC for Vector, S3 REST for FileStore, and REST for Markdown.
How It Works
Step-by-step walkthrough of the internal architecture.
Module Loading
Standalone loads the specified database module as a shared library at startup. The module is configured with its standard TOML configuration.
Protocol Server
A multi-protocol listener accepts incoming connections. The correct wire protocol handler is selected based on the client handshake or configured port.
Authentication
SCRAM-SHA-256 for password auth. Certificate-based mutual TLS. Token-based auth for REST protocols. All enforced before any query processing.
Query Processing
Wire protocol messages are parsed and translated to internal query representations. The database module processes the query under full RBAC enforcement.
Response Encoding
Query results are encoded in the wire protocol format and streamed back to the client. Result sets can be paginated via cursors.
Use Cases
Common deployment patterns and scenarios.
Drop-in Replacement
Use existing PostgreSQL, Redis, MongoDB, or Neo4j clients without modification against a WeftKit Standalone.
Microservice Data Layer
Deploy a dedicated database server per microservice with minimal resource footprint.
Edge Deployment
Run a full server on edge nodes with the same protocol as your cloud database for consistent application code.
Testing & CI
Spin up an isolated database server in CI with no external dependencies.
Configuration Reference
TOML configuration options for this component.
[standalone]
# Database module to load
module = "relational"
# Listen address
bind = "0.0.0.0:20000"
# Wire protocol (auto-detected from module if omitted)
protocol = "postgresql"
# TLS configuration (mandatory)
tls_cert = "/etc/weftkit/tls/server.crt"
tls_key = "/etc/weftkit/tls/server.key"
# Authentication
auth_method = "scram_sha_256"
password_file = "/etc/weftkit/passwords"