This package exports an implementation of KeyValueCache using Aerospike as the cache for resource caching in Apollo Data Sources.
const { ApolloServer } = require('apollo-server');
const { ApolloCacheAerospike } = require('apollo-server-cache-aerospike');
const responseCachePlugin = require ('apollo-server-plugin-response-cache');
const server = new ApolloServer({
typeDefs,
resolvers,
cache: new ApolloCacheAerospike(
{
namespace: 'test',
set: 'entity-cache',
valueBinName: 'cache-value',
cluster: {
hosts: [
{ addr: "localhost", port: 3000 }
]
}
}
),
cacheControl: {
defaultMaxAge: 30,
},
plugins: [responseCachePlugin()],
dataSources: () => ({
moviesAPI: new MoviesAPI(),
}),
});
For documentation on the Aerospike cluster options bassed to the Aerocpike client, refer to here