With Sails Stash, you can easily implement efficient caching for your Sails applications, enhancing performance and scalability without the need for complex setup.
Sails Stash integrates seamlessly with your Sails project, providing a straightforward way to cache data. It works out of the box with an in-memory store for development, and can be easily configured to use Redis for production environments. By leveraging caching, you can optimize the retrieval of frequently accessed data, reducing database load and improving overall application performance.
- Seamless integration with Sails projects
- Zero-config memory store for development (no Redis required!)
- Optional Redis support for production environments
- Improved performance and scalability
- Simple setup and usage
You can install Sails Stash via npm:
npm i sails-stashSails Stash works out of the box with no configuration required. It uses an in-memory store by default, perfect for development:
// Works immediately after installation!
await sails.cache.fetch(
'posts',
async function () {
return await Post.find()
},
6000,
)When you're ready to deploy to production, you can optionally switch to Redis for persistent, distributed caching.
npm i sails-redis// config/datastores.js
module.exports.datastores = {
// ... other datastores
cache: {
adapter: 'sails-redis',
url: process.env.REDIS_URL,
},
}// config/local.js or config/env/production.js
module.exports = {
cachestores: {
default: {
store: 'redis',
datastore: 'cache',
},
},
}That's it! Your application will now use Redis for caching in production while still using the memory store in development.
Check out the documentation for more ways to setup and use Sails Stash.
If you're interested in contributing to Sails Content, please read our contributing guide.
If you'd like to become a sponsor, check out DominusKelvin sponsor page and tiers.