example
example

教程 使用缓存代理优化资源下载

Yann

站长
管理成员
GTAOS管理组
认证卖家
认证用户
本 月 名 人 榜 最 佳
原贴:https://cookbook.fivem.net/2019/10/29/optimizing-resource-downloads-using-a-caching-proxy/

从版本 ID 1679 开始的服务器构建添加了使用一组命令配置用于从文件服务器下载资源的能力:
代码:
# Set the file server for the specified resource regex.
# 设置指定资源文件服务器.
fileserver_add ".*" "http://10.10.0.1/files"

# 删除与资源关联的文件服务器.
fileserver_remove ".*"

# 列出所有已注册的文件服务器模式.
fileserver_list

# 旧命令,但**需要**以免获取损坏缓存条目.
adhesive_cdnKey "someSecurePassphrase"

目前没有基于哈希的缓存失效逻辑(由于文件服务器不忽略查询字符串+客户端更新,这将需要另一个服务器更新),因此请确保在修改/重新启动资源之前清除代理的缓存。

这是一个用于设置它的 NGINX 配置示例(但是,例如,您应该在另一个通过 TLS 提供 HTTP/2 的代理后面运行它,或者以其他方式正确设置它——我们期待社区提供充实的示例在论坛上)

default.template:​

代码:
proxy_cache_path /srv/cache levels=1:2 keys_zone=assets:48m max_size=10g ;
log_format asset '$remote_addr - [$time_local] "$request" $status $body_bytes_sent $upstream_cache_status';

server {
        listen 80;

        location /files/ {
                access_log /dev/stdout asset;
                add_header X-Cache-Status $upstream_cache_status;
                proxy_cache_lock on;
                proxy_pass $REMOTE$request_uri;
                proxy_cache assets;
                proxy_cache_valid 1y;
                proxy_cache_key $request_uri$is_args$args;
        }
}

Dockerfile​

代码:
FROM nginx:alpine
COPY default.template /etc/nginx/conf.d/default.template
CMD sh -c "envsubst \"`env | awk -F = '{printf \" \\\\$%s\", $1}'`\" < /etc/nginx/conf.d/default.template > /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"

开始命令​

代码:
docker build -t fxproxy .
docker run -d --name=fxproxy -e REMOTE=http://10.10.0.2:30120 -p 80:80 -v $PWD/cache:/srv/cache fxproxy
 
最后编辑:

EvE

新用户
高级用户
认证用户
不是很理解 具体应该怎么去配置 可以出一期图文详细说一下吗
 

Yann

站长
管理成员
GTAOS管理组
认证卖家
认证用户
本 月 名 人 榜 最 佳
不是很理解 具体应该怎么去配置 可以出一期图文详细说一下吗
后边我部署成功后再细化一下。
 
  • 喜欢
反馈: EvE
顶部