diff options
author | vnugent <public@vaughnnugent.com> | 2024-03-24 21:26:44 -0400 |
---|---|---|
committer | vnugent <public@vaughnnugent.com> | 2024-03-24 21:26:44 -0400 |
commit | 49c3641def5ae1b7557ed61ed7bb28bbf425ccc9 (patch) | |
tree | 4eb1bd863074e64922e35ff730f354ac40528698 /plugins/ObjectCacheServer/server | |
parent | e5bb0ee302e789cb96e7ecfe839cbbcc8e3fd5d7 (diff) |
Squashed commit of the following:
commit a504435151efbe1d19404fa44859b15c629f6d5d
Author: vnugent <public@vaughnnugent.com>
Date: Sun Mar 24 20:55:01 2024 -0400
chore: Updated compose and added some more logging
commit c74440ff12daa03cc4b7792d0c3baad46a11a465
Author: vnugent <public@vaughnnugent.com>
Date: Mon Mar 18 21:57:57 2024 -0400
feat: message checksum support & dynamic serializers
commit 9983582db08d3e6c456295ea96e482cbb4f31f42
Author: vnugent <public@vaughnnugent.com>
Date: Sun Mar 10 21:58:28 2024 -0400
source tree project location updated
commit 60f09bde87b5c59ef937c62ef64b7745bc3711b5
Merge: 2f75659 e5bb0ee
Author: vnugent <public@vaughnnugent.com>
Date: Sun Mar 10 16:50:09 2024 -0400
Merge remote-tracking branch 'origin/master' into develop
commit 2f7565976472f0f056db60520bf253a776112c10
Merge: 323ff67 6b87785
Author: vnugent <public@vaughnnugent.com>
Date: Sun Mar 10 16:45:23 2024 -0400
merge master
commit 323ff67badfc46ad638d75f059d60d9425ccb2fa
Author: vnugent <public@vaughnnugent.com>
Date: Sun Mar 10 15:50:07 2024 -0400
ci(server): Conainerize and add vncache server packages
commit 5d4192880654fd6e00e587814169415b42621327
Author: vnugent <public@vaughnnugent.com>
Date: Sat Mar 9 19:13:21 2024 -0500
chore: #2 Minor fixes and polish before release
commit a4b3504bb891829074d1efde0433eae010862181
Author: vnugent <public@vaughnnugent.com>
Date: Sat Mar 9 16:30:44 2024 -0500
package updates
commit 4d8cfc10382105b0acbd94df93ad3d05ff91db54
Author: vnugent <public@vaughnnugent.com>
Date: Wed Mar 6 21:30:58 2024 -0500
refactor: #2 Centralize server state, default discovery endpoints & more
commit 016a96a80cce025a86c6cf26707738f6a2eb2658
Author: vnugent <public@vaughnnugent.com>
Date: Thu Feb 29 21:22:38 2024 -0500
feat: add future support for memory diagnostics, and some docs
commit 456ead9bc8b0f61357bae93152ad0403c4940101
Author: vnugent <public@vaughnnugent.com>
Date: Tue Feb 13 14:46:35 2024 -0500
fix: #1 shared cluster index on linux & latested core updates
commit a481d63f964a5d5204cac2e95141f37f9a28d573
Author: vnugent <public@vaughnnugent.com>
Date: Tue Jan 23 15:43:50 2024 -0500
cache extension api tweaks
Diffstat (limited to 'plugins/ObjectCacheServer/server')
4 files changed, 15 insertions, 11 deletions
diff --git a/plugins/ObjectCacheServer/server/container/Dockerfile b/plugins/ObjectCacheServer/server/container/Dockerfile index 6c466d4..725b9d1 100644 --- a/plugins/ObjectCacheServer/server/container/Dockerfile +++ b/plugins/ObjectCacheServer/server/container/Dockerfile @@ -55,6 +55,7 @@ ENV MAX_ENTRIES=10000 ENV CACHE_BUCKETS=100 ENV CACHE_MAX_MESSAGE=20480 ENV MAX_CONCURRENT_CONNECTIONS=1000 +ENV ENABLE_CHECKSUMS=true ENV VERIFY_IP=true ENV MAX_PEER_NODES=10 diff --git a/plugins/ObjectCacheServer/server/container/config-templates/ObjectCacheServer-template.json b/plugins/ObjectCacheServer/server/container/config-templates/ObjectCacheServer-template.json index 765c3d7..564039a 100644 --- a/plugins/ObjectCacheServer/server/container/config-templates/ObjectCacheServer-template.json +++ b/plugins/ObjectCacheServer/server/container/config-templates/ObjectCacheServer-template.json @@ -45,7 +45,8 @@ "buffer_recv_min": 8192, //min of 8k transfer buffer "buffer_header_max": 2048, //2k max header buffer size "buffer_header_min": 128, //128 byte min request header buffer size - "max_message_size": ${CACHE_MAX_MESSAGE} //Absolute maxium message size allowed, also the maxium size of cache entires + "max_message_size": ${CACHE_MAX_MESSAGE}, //Absolute maxium message size allowed, also the maxium size of cache entires + "enable_checksums": ${ENABLE_CHECKSUMS} //Enable checksums for cache entries }, //Known peers array, must point to well-known endpoint for discovery diff --git a/plugins/ObjectCacheServer/server/container/docker-compose.yaml b/plugins/ObjectCacheServer/server/container/docker-compose.yaml index c1b61fa..5aa494e 100644 --- a/plugins/ObjectCacheServer/server/container/docker-compose.yaml +++ b/plugins/ObjectCacheServer/server/container/docker-compose.yaml @@ -10,6 +10,7 @@ services: restart: unless-stopped hostname: vncache-server volumes: + - ./data/:/app/data:rw #optional writes log files to the host (may be required in the future) - ./assets:/app/usr/assets:ro #optional if assets are required - ./ssl:/app/ssl:ro #optional only if SSL is enabled (currently not a feature) ports: @@ -18,18 +19,19 @@ services: #System memory consumption is calculated as follows: # MAX_ENTIRES x CACHE_BUCKETS x CACHE_MAX_MESSAGE = max memory consumption - MAX_CONCURRENT_CONNECTIONS: "1000" #max number of concurrent connections + MAX_CONCURRENT_CONNECTIONS: "1000" #max number of concurrent client connections MAX_ENTRIES: "10000" #max number of cache entries per bucket CACHE_BUCKETS: "100" #number of cache buckets for load balancing CACHE_MAX_MESSAGE: "20480" #20KB VERIFY_IP: "true" #verfies the IP address of clients during negotiation (recommended) MAX_PEER_NODES: "10" #max number of other peer nodes this node shoud connect to DISCOVERY_INTERVAL: "360" #time (in seconds) between peer node discovery - KNOWN_PEERS: '[]' #array of known peer nodes in the cluster + KNOWN_PEERS: '[]' #array of known peer nodes in the cluster + ENABLE_CHECKSUMS: "true" #enables checksums for messages #SECRETS (must be JWK formatted keys) - CACHE_PRIV_KEY: "" #REQUIRED local private key used to identify and sign messages to clients and other nodes - CLIENT_PUB_KEY: "" #REQUIRED used to verify client messages + CACHE_PRIV_KEY: '' #REQUIRED local private key used to identify and sign messages to clients and other nodes + CLIENT_PUB_KEY: '' #REQUIRED used to verify client messages #HC vault #HC_VAULT_ADDR: "" diff --git a/plugins/ObjectCacheServer/server/taskfile.yaml b/plugins/ObjectCacheServer/server/taskfile.yaml index 38eae79..9455451 100644 --- a/plugins/ObjectCacheServer/server/taskfile.yaml +++ b/plugins/ObjectCacheServer/server/taskfile.yaml @@ -38,12 +38,12 @@ tasks: VNLIB_SHARED_HEAP_FILE_PATH: lib/libvn_rpmalloc cmds: - - cmd: dotnet webserver/VNLib.WebServer.dll --config config/config.json --input-off --inline-scheduler {{.ARGS}} + - cmd: dotnet webserver/VNLib.WebServer.dll --config config/config.json --input-off --inline-scheduler {{.CLI_ARGS}} #setup sever environment - setup-debian: - desc: "Performs initial setup on Debian x64 based machines" + setup-apt: + desc: "Performs initial setup on Debian/APT x64 based machines" silent: true cmds: - apt update @@ -51,8 +51,8 @@ tasks: - task: setup - echo "Setup complete" - setup-fedora: - desc: "Performs initial setup on Fedora/Redhat x64 (dnf) based machines" + setup-dnf: + desc: "Performs initial setup on Fedora using DNF x64 (dnf) based machines" silent: true cmds: - dnf update @@ -61,7 +61,7 @@ tasks: - echo "Setup complete" setup-alpine: - desc: "Performs initial setup on Alpine x64 based machines" + desc: "Performs initial setup on Alpine using APK x64 based machines" silent: true cmds: - apk update |