You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
113 lines
3.5 KiB
113 lines
3.5 KiB
## |
|
## Default strfry config |
|
## |
|
|
|
# Directory that contains the strfry LMDB database (restart required) |
|
db = "/var/lib/strfry" |
|
|
|
dbParams { |
|
# Maximum number of threads/processes that can simultaneously have LMDB transactions open (restart required) |
|
maxreaders = 256 |
|
|
|
# Size of mmap() to use when loading LMDB (restart required) |
|
dbsize = 10737418240 |
|
} |
|
|
|
events { |
|
# Maximum size of normalised JSON, in bytes |
|
maxEventSize = 65536 |
|
|
|
# Events newer than this will be rejected |
|
rejectEventsNewerThanSeconds = 900 |
|
|
|
# Events older than this will be rejected |
|
rejectEventsOlderThanSeconds = 94608000 |
|
|
|
# Ephemeral events older than this will be rejected |
|
rejectEphemeralEventsOlderThanSeconds = 60 |
|
|
|
# Ephemeral events will be deleted from the DB when older than this |
|
ephemeralEventsLifetimeSeconds = 300 |
|
|
|
# Maximum number of tags allowed |
|
maxNumTags = 2000 |
|
|
|
# Maximum size for tag values, in bytes |
|
maxTagValSize = 1024 |
|
} |
|
|
|
relay { |
|
# Interface to listen on. Use 0.0.0.0 to listen on all interfaces (restart required) |
|
bind = "0.0.0.0" |
|
|
|
# Port to open (restart required) |
|
port = 7777 |
|
|
|
# Set OS-limit on maximum number of open files/sockets (if 0, don't attempt to set) (restart required) |
|
nofiles = 1000000 |
|
|
|
# HTTP header that contains the client's real IP, before reverse proxying (ie x-real-ip) (MUST be all lower-case) |
|
realIpHeader = "" |
|
|
|
info { |
|
# NIP-11: Name of this server. Short/descriptive (< 30 characters) |
|
name = "Decent Newsroom Read-Cache Relay" |
|
|
|
# NIP-11: Detailed information about relay, free-form |
|
description = "Read-only cache relay for long-form articles and related activity." |
|
|
|
# NIP-11: Administrative nostr pubkey, for contact purposes |
|
pubkey = "d475ce4b3977507130f42c7f86346ef936800f3ae74d5ecf8089280cdc1923e9" |
|
|
|
# NIP-11: Alternative administrative contact (email, website, etc) |
|
contact = "decentnewsroom.com" |
|
} |
|
|
|
# Maximum accepted incoming websocket frame size (should be larger than max event) (restart required) |
|
maxWebsocketPayloadSize = 131072 |
|
|
|
# Websocket-level PING message frequency (should be less than any reverse proxy idle timeouts) (restart required) |
|
autoPingSeconds = 55 |
|
|
|
# If TCP keep-alive should be enabled (detect dropped connections to upstream reverse proxy) |
|
enableTcpKeepalive = false |
|
|
|
# How much uninterrupted CPU time a REQ query should get during its DB scan |
|
queryTimesliceBudgetMicroseconds = 10000 |
|
|
|
# Maximum records that can be returned per filter |
|
maxFilterLimit = 500 |
|
|
|
# Maximum number of subscriptions (concurrent REQs) a connection can have open at any time |
|
maxSubsPerConnection = 20 |
|
|
|
writePolicy { |
|
# If non-empty, path to an executable script that implements the writePolicy plugin logic |
|
# plugin = "/opt/write-policy.sh" |
|
} |
|
|
|
compression { |
|
# Use permessage-deflate compression if supported by client. Reduces bandwidth, but slight increase in CPU (restart required) |
|
enabled = true |
|
|
|
# Maintain a sliding window buffer for each connection. Improves compression, but uses more memory (restart required) |
|
slidingWindow = true |
|
} |
|
|
|
logging { |
|
# Dump all incoming messages |
|
dumpInAll = false |
|
|
|
# Dump all incoming EVENT messages |
|
dumpInEvents = false |
|
|
|
# Dump all incoming REQ/CLOSE messages |
|
dumpInReqs = false |
|
|
|
# Log performance metrics for initial REQ database scans |
|
dbScanPerf = false |
|
} |
|
|
|
numThreads = 0 |
|
} |
|
|
|
|