Cache Verzeichnis nach /dev/shm/ verlegen - geht das?

Hallo. Ich möchte gerne das /cache verzeichnis in den Arbeistspeicher verlegen, da es sich um eine Testumgebung in einer VirtualBox handelt und die Performance der virtualbox shared folder doch etwas lahm ist. Gibt es eine Einstellung um den ort des /cache Ordners zu ändern? wenn ja welche.

Du kannst das cache/-Verzeichnis in ein tmpfs legen - s. https://www.howtoforge.com/storing-file … with-tmpfs . Du mußt allerdings beachten, daß Shopware einige Unterordner im cache/-Verzeichnis benötigt, d.h., die mußt Du nach einem Neustart des Systems wieder anlegen (entweder von Hand oder per Skript).

1 „Gefällt mir“

@TimmeHosting Danke für den Tip

Ich habe es mittlerweile auch über die config.php hinbekommen. Allerdings gibt es einige Caches (mpdf) die sich so nicht verlegen lassen.

Die Konfiguration sieht für Shopware 4 und 5 anders aus. In Shopware 5 werden die Cache-Ordner automatisch von einem Frontend-Aufruf erzeugt. Für Shopware 4 muss man die benötigten Ordner wie @TimmeHosting erwähnte von Hand oder per Skript anlegen.

Probleme bekommt man bei Aufrufen der Shopware Konsolen Anwendung. Die bin/console erzeugt nicht alle Ordner in var/cache automatisch und wirft entsprechende Fehler. /bin/console sw:theme:cache:generate ist beispielweise ein Aufruf der nicht durchläuft. Schade eigentlich denn für eine automatisierte Installation wäre das praktisch.

meine config.php für Shopware 5 sieht folgendermaßen aus:

 [
        'host' => 'localhost',
        'port' => '3306',
        'username' => 'shopware5',
        'password' => 'shopware5',
        'dbname' => 'shopware5',
    ],
    'phpSettings' => [
        'error_reporting' => 'E_ALL & ~E_NOTICE & ~E_DEPRECATED',
        'error_display' => 'Off',
        'error_log' => '/home/vagrant/www/shopware5/var/log/php_error.log',
        'log_errors' => 'On',
        'max_execution_time' => '300'
    ],
    'template' => [
        'cacheDir' => '/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION.'/templates',
        'compileDir' => '/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION.'/templates',
    ],
    'httpcache' => [
        'cache_dir' => '/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION.'/html',
    ],
    'cache' => [
        'frontendOptions' => [
            'cache_id_prefix' => md5('/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION)
        ],
        'backend' => 'auto', // e.G auto, apc, xcache
        'backendOptions' => [
            'cache_dir' => '/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION.'/general',
        ],
    ],
    'hook' => [
        'proxyDir' => '/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION.'/proxies',
    ],
    'model' => [
        'attributeDir' => '/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION.'/doctrine/attributes',
        'proxyDir' => '/dev/shm/cache/'.$this->environment.'_'.\Shopware::REVISION.'/doctrine/proxies',
        'cacheProvider' => 'auto', // supports null, auto, Apc, Array, Wincache and Xcache
    ],
);