Shop-Cache APC-Cache / Http-Cache / Query-Cache Unterschied?

Es gibt zahlreiche Anweisungen wie man was installiert und auch verschiedene Geschwindigkeitstest welche zeigen, dass Query-Cache als auch APC-Cache oder Http-Cache sehr schnell sind. Aber was ist der Unterschied? Kann man alle gleichzeitig benutze? Was ist wenn man den APC-Cache benutzt muss man dann die andern ausschalten? Oder haben diese mit einander gar nichts zu tun?

Kann keiner was dazu sagen?

Hallo sm-team, also wir empfehlen ganz klar den APC-Cache zusammen mit dem HTTP-Cache. Dies liefert die beste Perfomance. Durch den APC-Cache werden zum Beispiel die Doctrine-Query erheblich beschleunigt. Zusammen mit dem HTTP-Cache ist dies am besten. Der Query Cache ist eigentlich veraltet und sollte nicht mehr verwendet werden. Grüße aus dem Münsterland Patrick

Vielen Dank für die Antwort. Welcher ist der wo Standard bei Shopware aktiv ist? Wenn ich den APC-Cach mit Http mache, muss ich irgendetwas ausschalten oder einfach die neuen nach der Wiki-Gebrauchsanweisung installieren?

Genau. Du kannst dich eigentlich an die Anleitung im Wiki halten. Da sollte eigentlich alles drin stehen. http://wiki.shopware.de/Einrichtung-und … l_964.html

Hab es ausprobiert, leider funktionierst bei mir nicht. Nach der Installation ist die Domain nicht mehr erreichbar. config.php sieht wie folgt aus:<?php return array(
‘db’ => array( ‘username’ => ‘xxx’, ‘password’ => ‘xxxxx’, ‘dbname’ => ‘xxxxxxxxxxxx’, ‘host’ => ‘xxxxxxx’, ‘port’ => ‘xxxxxxxxxx’ ), // Backend-Cache ‘cache’ => array( ‘backend’ => ‘apc’, ‘backendOptions’ => array(), ‘frontendOptions’ => array(), ), // Model-Cache ‘model’ => array( ‘cacheProvider’ => ‘Apc’ // supports Apc, Array, Wincache and Xcache ) );

da fehlt ein KOmma // Model-Cache ‚model‘ => array( ‚cacheProvider‘ => ‚Apc‘ // supports Apc, Array, Wincache and Xcache ),

aber dann würde wenigstens eine info.php gehen. Es funktioniert jedoch nichts unter dieser Domain, nur ftp unsw…(Kein URL Aufrufe mehr)

ach last mich raten nehmt das mit den 512M wieder raus aus APC.ini dann geht es wieder

Vielen Dank an dem hat es gelegen. Woher weiß ich nun das Shopware APC benutzt? In der PHP.ini ist es jedenfalls schon mal drin. Und bei HTTP Cache einfach das Modul installieren und aktivieren sonst nichts?

jupp dann nimmt er zwar nur 30 mb speiucher bei apc aber es geht und es gibt die datei apc.php in www-root legen dann kannste es beobachten wie es geht 3.13 solltest du haben oder 3.14 die neue version, kannst du dort sehen ob du sie hast und schreib statt 512M 512 dann geht es auch und du nutzt die vollen 512MB

Anhang der Grafik bin ich ehrlich gesagt am zweifeln ob Shopware APC benutzt: Used: 521.2 KBytes Free: 127.5 MBytes Oder kann es sein das es fast nichts benutzt?

Hallo, den APC hast du ja auch für die Backend Models eingerichtet. Die nehmen auch nicht so viel Platz weg. Hast du testweise das Plugin Http FrontendCache installiert und aktiviert und zusätzlich über die Configdatei aktiviert? http://wiki.shopware.de/Shopware-4-Http … html#Proxy Dann merkst du richtig was im Frontend :wink:

Meine Config sieht jetzt wie folgt aus:<?php return array(
‚db‘ => array( ‚username‘ => ‚%db.user%‘, ‚password‘ => ‚%db.password%‘, ‚dbname‘ => ‚%db.name%‘, ‚host‘ => ‚%db.host%‘, ‚port‘ => ‚%db.port%‘ ), ‚httpCache‘ => array( ‚enabled‘ => true, // Module aktivieren / deaktivieren - Muss z.B. für Varnish deaktiviert werden ‚debug‘ => false, // Debug-Modus aktivieren - Cache-Informationen werden in den Header geschrieben ‚stale_if_error‘ => true, // Im Fehlerfall eine ältere Version ausliefern ), ); Ist das so in Ordnung? Oder muss noch die Default.php angepasst werden?

Hallo, wenn das alles passt musst du das im Backend einsehen können. Da gibt es unter “Shopcache leere” in der Tabelle auch die Anzeige der Belegung des FrontendCaches Wenn das nicht drin ist, dann greift s noch nicht richtig. In diesem Beispiel ist der Cache noch aus - Erkennbar an der leeren zweiten Zeile

Leider ist es bei mir genau so wie auf dem Bild. Wo konnte ich noch irgend etwas vergessen haben? Auf dem Server muss man nichts spezielles installieren? Außerdem stand in der wiki: "In Shopware 4 ist standardmäßig ein in PHP geschriebener Http-Proxy enthalten. Dieser kann über die engine/Shopware/Configs/Custom.php konfiguriert und aktiviert / deaktiviert werden. " dieses Bespiel musste ich selbst manuell hinzufügen. Bei mir war davor die Datei ohne diese Texte.

Hallo, ich versuche morgen mal ein vollständiges Beispirl zu posten. Bin aktuell unterwegs…

1 „Gefällt mir“

Hallo, bekomme es auch nicht hin… Bisher habe ich gemacht: * Plugin Frontendcache (HttpCache) installiert und aktiviert * engine/Shopware/Configs/Custom.php nach Beispiel abgeändert…sieht jetzt so aus <?php return array( 'db' => array( 'username' =\> '%db.user%', 'password' =\> '%db.password%', 'dbname' =\> '%db.name%', 'host' =\> '%db.host%', 'port' =\> '%db.port%' ), 'httpCache' =\> array( 'enabled' =\> true, // Module aktivieren / deaktivieren - Muss z.B. für Varnish deaktiviert werden 'debug' =\> true, // Debug-Modus aktivieren - Cache-Informationen werden in den Header geschrieben 'stale\_if\_error' =\> true, // Im Fehlerfall eine ältere Version ausliefern ), ); * Alle Caches gelöscht, ausgeloggt, wieder eingeloggt… Die Zeile in “Shopcache leeren” bleibt leider leer… Habe ich etwas vergessen? APC und ESI Unterstützung für das Template funktionieren… Was ich auch nicht ganz verstehe: [quote]Um den Cache direkt verwenden zu können, ist in Shopware ein in PHP geschriebener Proxy eingebaut. Dieser kann über die Shopware-Konfiguration aktiviert werden.[/quote] Damit ist doch das Abändern der Custom.php gemeint? Oder muss man nochmal an die Config.php ran?

Hallo, könnt ihr im Hauptverzeichneis einmal die config.php so anpassen: <?php return array( 'db' => array( 'username' =\> 'MEINUSER', 'password' =\> 'MEINPASSWORT', 'dbname' =\> 'MEINEDATENBANK', 'host' =\> 'localhost', 'port' =\> '3307' ), 'httpCache' =\> array( 'enabled' =\> true, // Module aktivieren / deaktivieren - Muss z.B. für Varnish deaktiviert werden 'debug' =\> false, // Debug-Modus aktivieren - Cache-Informationen werden in den Header geschrieben 'stale\_if\_error' =\> false, // Im Fehlerfall eine ältere Version ausliefern ), );

1 „Gefällt mir“

So funktioniert es, jedoch fühlt sich der Aufbau der Seiten sehr langsam an.