mirror of
https://github.com/mempool/mempool.git
synced 2025-03-13 11:36:07 +01:00
Add nginx cache warmer script for production use
This commit is contained in:
parent
548f38292f
commit
2cb50c2351
3 changed files with 44 additions and 5 deletions
19
production/nginx-cache-warmer
Executable file
19
production/nginx-cache-warmer
Executable file
|
@ -0,0 +1,19 @@
|
|||
#!/usr/bin/env zsh
|
||||
hostname=$(hostname)
|
||||
while true
|
||||
do for url in /url/v1/statistics/2h \
|
||||
/url/v1/statistics/24h \
|
||||
/url/v1/statistics/1w \
|
||||
/url/v1/statistics/1m \
|
||||
/url/v1/statistics/3m \
|
||||
/url/v1/statistics/6m \
|
||||
/url/v1/statistics/1y \
|
||||
/url/v1/statistics/2y \
|
||||
/url/v1/statistics/3y \
|
||||
/
|
||||
do
|
||||
curl -s "https://${hostname}${url}" >/dev/null
|
||||
done
|
||||
|
||||
sleep 10
|
||||
done
|
|
@ -1,4 +1,5 @@
|
|||
# proxy cache
|
||||
proxy_cache_path /var/cache/nginx/api keys_zone=api:20m levels=1:2 inactive=600s max_size=100m;
|
||||
proxy_cache_path /var/cache/nginx/services keys_zone=services:20m levels=1:2 inactive=600s max_size=100m;
|
||||
proxy_cache_path /var/cache/nginx/markets keys_zone=markets:20m levels=1:2 inactive=600s max_size=100m;
|
||||
types_hash_max_size 2048;
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
location /api/v1/statistics {
|
||||
try_files /dev/null @mempool-api-v1-cache;
|
||||
try_files /dev/null @mempool-api-v1-warmcache;
|
||||
}
|
||||
location /api/v1 {
|
||||
try_files /dev/null @mempool-api-v1-nocache;
|
||||
try_files /dev/null @mempool-api-v1-coldcache;
|
||||
}
|
||||
location /api/ {
|
||||
rewrite ^/api/(.*) /$1 break;
|
||||
try_files /dev/null @electrs-api-nocache;
|
||||
}
|
||||
|
||||
location @mempool-api-v1-cache {
|
||||
location @mempool-api-v1-warmcache {
|
||||
proxy_pass $mempoolBackend;
|
||||
proxy_http_version 1.1;
|
||||
|
||||
|
@ -21,10 +21,29 @@ location @mempool-api-v1-cache {
|
|||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
proxy_cache_bypass $http_upgrade;
|
||||
proxy_cache_background_update on;
|
||||
proxy_cache_use_stale updating;
|
||||
proxy_cache api;
|
||||
proxy_cache_valid 200 10s;
|
||||
proxy_redirect off;
|
||||
proxy_buffering off;
|
||||
expires 10s;
|
||||
}
|
||||
|
||||
proxy_cache_valid any 10s;
|
||||
location @mempool-api-v1-coldcache {
|
||||
proxy_pass $mempoolBackend;
|
||||
proxy_http_version 1.1;
|
||||
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
proxy_cache_bypass $http_upgrade;
|
||||
proxy_cache api;
|
||||
proxy_cache_valid 200 10s;
|
||||
proxy_redirect off;
|
||||
expires 10s;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue