|
1 | 1 | # HTTP Adapter |
2 | 2 |
|
3 | | -The HTTP Adapter exposes HTTP endpoints for publishing messages into SuperMQ channels. It authenticates clients via tokens or Basic auth, resolves domains/channels over gRPC, and forwards payloads to the message broker. |
| 3 | +The HTTP Adapter exposes HTTP endpoints for publishing messages and WebSocket capabilities for publishing and subscribing to messages from SuperMQ channels. It authenticates clients via tokens or Basic auth, resolves domains/channels over gRPC, and forwards payloads to the message broker. |
4 | 4 |
|
5 | 5 | For more on SuperMQ, see the [official documentation][doc]. |
6 | 6 |
|
7 | 7 | ## Configuration |
8 | 8 |
|
9 | 9 | Environment variables (unset values fall back to defaults): |
10 | 10 |
|
11 | | -| Variable | Description | Default | |
12 | | -| -------------------------------------- | ------------------------------------------------------------------------------------------ | ------------------------------------- | |
13 | | -| `SMQ_HTTP_ADAPTER_LOG_LEVEL` | Log level (debug, info, warn, error) | debug | |
14 | | -| `SMQ_HTTP_ADAPTER_HOST` | HTTP Adapter host | http-adapter | |
15 | | -| `SMQ_HTTP_ADAPTER_PORT` | HTTP Adapter port | 8008 | |
16 | | -| `SMQ_HTTP_ADAPTER_SERVER_CERT` | Path to PEM-encoded server certificate (enables TLS) | "" | |
17 | | -| `SMQ_HTTP_ADAPTER_SERVER_KEY` | Path to PEM-encoded server key | "" | |
18 | | -| `SMQ_HTTP_ADAPTER_SERVER_CA_CERTS` | Trusted CA bundle for HTTPS server | "" | |
19 | | -| `SMQ_HTTP_ADAPTER_CLIENT_CA_CERTS` | Client CA bundle to require mTLS on HTTPS server | "" | |
20 | | -| `SMQ_HTTP_ADAPTER_CACHE_NUM_COUNTERS` | Cache counters for topic parsing | 200000 | |
21 | | -| `SMQ_HTTP_ADAPTER_CACHE_MAX_COST` | Maximum cache size (bytes) | 1048576 | |
22 | | -| `SMQ_HTTP_ADAPTER_CACHE_BUFFER_ITEMS` | Cache buffer items | 64 | |
23 | | -| `SMQ_MESSAGE_BROKER_URL` | Message broker URL (publishing target) | nats://nats:4222 | |
24 | | -| `SMQ_ES_URL` | Event store URL (publishing middleware) | nats://nats:4222 | |
25 | | -| `SMQ_JAEGER_URL` | Jaeger tracing endpoint | <http://jaeger:4318/v1/traces> | |
26 | | -| `SMQ_JAEGER_TRACE_RATIO` | Trace sampling ratio | 1.0 | |
27 | | -| `SMQ_SEND_TELEMETRY` | Send telemetry to SuperMQ call-home server | true | |
28 | | -| `SMQ_HTTP_ADAPTER_INSTANCE_ID` | Service instance ID (auto-generated when empty) | "" | |
29 | | -| `SMQ_CLIENTS_GRPC_URL` | Clients service gRPC URL | clients:7006 | |
30 | | -| `SMQ_CLIENTS_GRPC_TIMEOUT` | Clients gRPC request timeout | 300s | |
31 | | -| `SMQ_CLIENTS_GRPC_CLIENT_CERT` | Clients gRPC client certificate | "" | |
32 | | -| `SMQ_CLIENTS_GRPC_CLIENT_KEY` | Clients gRPC client key | "" | |
33 | | -| `SMQ_CLIENTS_GRPC_SERVER_CA_CERTS` | Clients gRPC trusted CA bundle | "" | |
34 | | -| `SMQ_CHANNELS_GRPC_URL` | Channels service gRPC URL | channels:7005 | |
35 | | -| `SMQ_CHANNELS_GRPC_TIMEOUT` | Channels gRPC request timeout | 300s | |
36 | | -| `SMQ_CHANNELS_GRPC_CLIENT_CERT` | Channels gRPC client certificate | "" | |
37 | | -| `SMQ_CHANNELS_GRPC_CLIENT_KEY` | Channels gRPC client key | "" | |
38 | | -| `SMQ_CHANNELS_GRPC_SERVER_CA_CERTS` | Channels gRPC trusted CA bundle | "" | |
39 | | -| `SMQ_DOMAINS_GRPC_URL` | Domains service gRPC URL | domains:7003 | |
40 | | -| `SMQ_DOMAINS_GRPC_TIMEOUT` | Domains gRPC request timeout | 300s | |
41 | | -| `SMQ_DOMAINS_GRPC_CLIENT_CERT` | Domains gRPC client certificate | "" | |
42 | | -| `SMQ_DOMAINS_GRPC_CLIENT_KEY` | Domains gRPC client key | "" | |
43 | | -| `SMQ_DOMAINS_GRPC_SERVER_CA_CERTS` | Domains gRPC trusted CA bundle | "" | |
44 | | -| `SMQ_AUTH_GRPC_URL` | Auth service gRPC URL | auth:7001 | |
45 | | -| `SMQ_AUTH_GRPC_TIMEOUT` | Auth service gRPC request timeout | 300s | |
46 | | -| `SMQ_AUTH_GRPC_CLIENT_CERT` | Auth gRPC client certificate | "" | |
47 | | -| `SMQ_AUTH_GRPC_CLIENT_KEY` | Auth gRPC client key | "" | |
48 | | -| `SMQ_AUTH_GRPC_SERVER_CA_CERTS` | Auth gRPC trusted CA bundle | "" | |
| 11 | +| Variable | Description | Default | |
| 12 | +| ------------------------------------- | ---------------------------------------------------- | ------------------------------ | |
| 13 | +| `SMQ_HTTP_ADAPTER_LOG_LEVEL` | Log level (debug, info, warn, error) | debug | |
| 14 | +| `SMQ_HTTP_ADAPTER_HOST` | HTTP Adapter host | http-adapter | |
| 15 | +| `SMQ_HTTP_ADAPTER_PORT` | HTTP Adapter port | 8008 | |
| 16 | +| `SMQ_HTTP_ADAPTER_SERVER_CERT` | Path to PEM-encoded server certificate (enables TLS) | "" | |
| 17 | +| `SMQ_HTTP_ADAPTER_SERVER_KEY` | Path to PEM-encoded server key | "" | |
| 18 | +| `SMQ_HTTP_ADAPTER_SERVER_CA_CERTS` | Trusted CA bundle for HTTPS server | "" | |
| 19 | +| `SMQ_HTTP_ADAPTER_CLIENT_CA_CERTS` | Client CA bundle to require mTLS on HTTPS server | "" | |
| 20 | +| `SMQ_HTTP_ADAPTER_CACHE_NUM_COUNTERS` | Cache counters for topic parsing | 200000 | |
| 21 | +| `SMQ_HTTP_ADAPTER_CACHE_MAX_COST` | Maximum cache size (bytes) | 1048576 | |
| 22 | +| `SMQ_HTTP_ADAPTER_CACHE_BUFFER_ITEMS` | Cache buffer items | 64 | |
| 23 | +| `SMQ_MESSAGE_BROKER_URL` | Message broker URL (publishing target) | nats://nats:4222 | |
| 24 | +| `SMQ_ES_URL` | Event store URL (publishing middleware) | nats://nats:4222 | |
| 25 | +| `SMQ_JAEGER_URL` | Jaeger tracing endpoint | <http://jaeger:4318/v1/traces> | |
| 26 | +| `SMQ_JAEGER_TRACE_RATIO` | Trace sampling ratio | 1.0 | |
| 27 | +| `SMQ_SEND_TELEMETRY` | Send telemetry to SuperMQ call-home server | true | |
| 28 | +| `SMQ_HTTP_ADAPTER_INSTANCE_ID` | Service instance ID (auto-generated when empty) | "" | |
| 29 | +| `SMQ_CLIENTS_GRPC_URL` | Clients service gRPC URL | clients:7006 | |
| 30 | +| `SMQ_CLIENTS_GRPC_TIMEOUT` | Clients gRPC request timeout | 300s | |
| 31 | +| `SMQ_CLIENTS_GRPC_CLIENT_CERT` | Clients gRPC client certificate | "" | |
| 32 | +| `SMQ_CLIENTS_GRPC_CLIENT_KEY` | Clients gRPC client key | "" | |
| 33 | +| `SMQ_CLIENTS_GRPC_SERVER_CA_CERTS` | Clients gRPC trusted CA bundle | "" | |
| 34 | +| `SMQ_CHANNELS_GRPC_URL` | Channels service gRPC URL | channels:7005 | |
| 35 | +| `SMQ_CHANNELS_GRPC_TIMEOUT` | Channels gRPC request timeout | 300s | |
| 36 | +| `SMQ_CHANNELS_GRPC_CLIENT_CERT` | Channels gRPC client certificate | "" | |
| 37 | +| `SMQ_CHANNELS_GRPC_CLIENT_KEY` | Channels gRPC client key | "" | |
| 38 | +| `SMQ_CHANNELS_GRPC_SERVER_CA_CERTS` | Channels gRPC trusted CA bundle | "" | |
| 39 | +| `SMQ_DOMAINS_GRPC_URL` | Domains service gRPC URL | domains:7003 | |
| 40 | +| `SMQ_DOMAINS_GRPC_TIMEOUT` | Domains gRPC request timeout | 300s | |
| 41 | +| `SMQ_DOMAINS_GRPC_CLIENT_CERT` | Domains gRPC client certificate | "" | |
| 42 | +| `SMQ_DOMAINS_GRPC_CLIENT_KEY` | Domains gRPC client key | "" | |
| 43 | +| `SMQ_DOMAINS_GRPC_SERVER_CA_CERTS` | Domains gRPC trusted CA bundle | "" | |
| 44 | +| `SMQ_AUTH_GRPC_URL` | Auth service gRPC URL | auth:7001 | |
| 45 | +| `SMQ_AUTH_GRPC_TIMEOUT` | Auth service gRPC request timeout | 300s | |
| 46 | +| `SMQ_AUTH_GRPC_CLIENT_CERT` | Auth gRPC client certificate | "" | |
| 47 | +| `SMQ_AUTH_GRPC_CLIENT_KEY` | Auth gRPC client key | "" | |
| 48 | +| `SMQ_AUTH_GRPC_SERVER_CA_CERTS` | Auth gRPC trusted CA bundle | "" | |
49 | 49 |
|
50 | 50 | ## Deployment |
51 | 51 |
|
|
0 commit comments