在应用程序准备好处理请求之前,是否有uWSGI选项/ hook / subsystem来填充缓存?
静态load-file-in-cache
不是一个选项。我需要调用一个填充uWSGI缓存的函数或程序。
答案 0 :(得分:1)
先决条件是uWSGI实际上启用了缓存,例如:
[uwsgi]
cache2 = name=mycache,items=100
启动挂钩有很多选项。看看this page in the uWSGI doc。您可以选择要挂钩的uWSGI启动顺序中的哪一点(as-root
,as-user
,pre-app
,accepting1
,...),您可以选择在shell exec(exec
)和函数调用(call
)之间。
config指令可能类似于:
[uwsgi]
call-as-root = cache_clear("mycache")
call-as-user = cache_set("key", "value")
我相信load-file-in-cache
指令也可以解决您的问题:
[uwsgi]
exec-as-user=/usr/local/bin/populate_my_cache_folder.sh
for-glob = /my/cache/folder/*.*
load-file-in-cache = files %(_)
endfor =