DefaultCacheFactory
class DefaultCacheFactory implements CacheFactory (View source)
Returns the most performant combination of caches available on the system:
- PhpFilesCache(PHP 7 with opcache enabled)
- ApcuCache(requires APC) with a- FilesystemCachefallback (for larger cache volumes)
- FilesystemCacheif none of the above is available
Modelled after Symfony\Component\Cache\Adapter\AbstractAdapter::createSystemCache()
Properties
| protected | string | $args | ||
| protected | LoggerInterface | $logger | 
Methods
                                        protected                                                        
                
                    CacheInterface
                
                                
                    createCache(string $class, array $args, bool $useInjector = true)
        
                                            
                
            Creates an object with a PSR-16 interface, usually from a PSR-6 class name
Details
        
                            
    __construct(array $args = [], LoggerInterface $logger = null)
        
    
    No description
        
                            object
    create(string $service, array $args = [])
        
    
    No description
        
                    protected        bool
    isAPCUSupported()
        deprecated
    
    deprecated
Determine if apcu is supported
        
                    protected        bool
    isPHPFilesSupported()
        
    
    Determine if PHP files is supported
        
                    protected        CacheInterface
    createCache(string $class, array $args, bool $useInjector = true)
        
    
    Creates an object with a PSR-16 interface, usually from a PSR-6 class name
Quick explanation of caching standards:
- Symfony cache implements the PSR-6 standard
- Symfony provides adapters which wrap a PSR-6 backend with a PSR-16 interface
- Silverstripe uses the PSR-16 interface to interact with caches. It does not directly interact with the PSR-6 classes
- Psr\SimpleCache\CacheInterface is the php interface of the PSR-16 standard. All concrete cache classes Silverstripe code interacts with should implement this interface
Further reading: