Ich stelle für unsere memcache-Instanz (v1.4.4) eine Trefferquote von 55% ein und frage mich, was getan werden kann, um die Trefferquote zu verbessern. Wir sind in einem Multisite-Setup (über 30 Sites) mit zwei Webservern mit Lastenausgleich. Auf jedem Webserver befindet sich eine Instanz von memcached.
In der habe settings.php
ich:
$conf['memcache_servers'] = array(
'11.22.33.44:11211' => 'default',
'11.22.33.45:11211' => 'default',
);
$conf['memcache_bins'] = array('cache' => 'default');
$conf['memcache_key_prefix'] = $_SERVER['SERVER_NAME'];
Ich versuche, die Trefferquote mithilfe von Bins zu verbessern, habe jedoch einige Vorschläge gefunden, dass das neueste memcache-Modul dies bereits tut, bin mir jedoch nicht sicher, da die Anweisungen mit dem Modul Anweisungen zum Einrichten von Bins enthalten.
Wie bestimmen Sie, welche (Tabellen-) Objekte benötigt werden, um einen eigenen Behälter zu haben? Dies sind die Cache-Tabellen, die ich auf meinen Sites habe:
cache
cache_admin_menu (empty)
cache_block (empty)
cache_bootstrap
cache_field
cache_filter (empty)
cache_form (empty)
cache_image (empty)
cache_media_xml (empty)
cache_menu
cache_page (empty)
cache_path (empty)
cache_token (empty)
cache_update (empty)
cache_views
cache_views_data (empty)
ctools_css_cache (empty)
ctools_object_cache (empty)
Was kann ich neben den Behältern noch tun, um die Verwendung von Memcaches zu verbessern?
Danke vielmals!
quelle
Antworten:
Nach langem Nachforschen haben sich folgende Faktoren auf unsere Trefferquote und die Verwendung im Speicher ausgewirkt:
Unser memcached conf in settings.php sieht jetzt ungefähr so aus:
Größte Gewinne
Der größte Vorteil für uns war die Aktivierung der Komprimierung, obwohl in der Dokumentation angegeben ist, dass dadurch die CPU-Zyklen erhöht werden. Wir haben unserer VM 4 CPUs zugewiesen und haben keinen Unterschied bemerkt. Die Zeit für zwischengespeicherte Anrufe ging von ~ 1250 ms auf ~ 150 ms (bezogen von NewRelic), um einen Inhalt zu erstellen (in unserem Fall ein benutzerdefinierter Artikel).
Trefferquote
Unsere Trefferquote beträgt jetzt ~ 70% - viel besser als 55% zuvor, aber die 90% +, von denen einige berichtet haben, sind nicht zu bremsen ... die Quest geht weiter (-:
Hoffentlich hilft das jemand anderem. Wenn Sie auf andere Verbesserungen stoßen oder Korrekturen / Vorschläge haben, posten Sie bitte Kommentare oder Antworten.
Update - Version des memcahe Moduls
Wir sind von Version 1.0-Beta4 auf 1.0 übergegangen und haben jetzt eine Trefferquote von 87%. Ich musste memcached neu starten, da die Trefferquote nicht über 70% lag. Wir haben momentan 64MB für memcached reserviert, daher war dies keine große Sache für uns.
quelle