Introduction
What is Souin?
Souin is a powerful HTTP cache system written in go and implements the following RFCs (Request For Comments):
Multiple backend storages
Since v1.7.0
Souin implements only one storage, if you need a specific storage you have to take it from the storages repository and add it either in your code, during the build otherwise.
(e.g. with otter using caddy) You have to build your caddy module with the desired storage
xcaddy build --with github.com/darkweak/souin/plugins/caddy --with github.com/darkweak/storages/otter/caddy
and configure otter in your Caddyfile/JSON configuration file.
See the storages page to learn more about each supported storage.
Local in-memory or filesystem
Distributed in-memory
Distributed external services
Fully customizable without additional language
The default configuration format is YAML (using the standalone HTTP cache server) because it’s programmatically generable and easier than the VCL but unlike the VCL it’s not a script language. Refer to the configuration page to discover how to configure your Souin instance.