Verwenden Sie gecacht für die Sitzungsspeicherung

Das gecachete Speichersystem ist ein allgemeines Speicherzwischenspeichersystem. Es wird häufig verwendet, um dynamische datenbankbasierte Websites zu beschleunigen, indem Daten und Objekte im RAM zwischengespeichert werden, um die Häufigkeit zu reduzieren, mit der eine externe Datenquelle (z. B. eine Datenbank oder API) gelesen werden muss.

Die zwischengespeicherten Dateien bieten eine große Hash-Tabelle, die auf mehrere Computer verteilt werden kann. Wenn die Tabelle voll ist, führen nachfolgende Einfügungen dazu, dass ältere Daten in der zuletzt verwendeten Reihenfolge (LRU) gelöscht werden. Dieser Hash-Tisch ist oft sehr groß. (Quelle: memcached.org)

Commerce verwendet die Zwischenspeicherung für die Sitzungsspeicherung, nicht aber für die Seiten-Zwischenspeicherung. Für die Zwischenspeicherung von Seiten wird empfohlen Redis oder Varnisch.

So konfigurieren Sie Commerce für die Verwendung zwischengespeicherter Inhalte:

  1. Öffnen <your install dir>/app/etc/env.php in einem Texteditor.

  2. Suchen Sie Folgendes:

    code language-php
    'session' =>
        array (
        'save' => 'files',
    ),
    
  3. Ändern Sie sie wie folgt:

    code language-php
    'session' =>
        array (
          'save' => 'memcached',
          'save_path' => '<memcache ip or host>:<memcache port>'
    ),
    

    gecacht hat optionale Startparameter, die über den Rahmen dieses Handbuchs hinausgehen. Weitere Informationen finden Sie im Abschnitt zwischengespeichert Dokumentation, Quellcode und Änderungen.

  4. Fahren Sie mit dem nächsten Abschnitt fort.

So überprüfen Sie die zwischengespeicherten Arbeiten mit Commerce:

  1. Löschen Sie den Inhalt der folgenden Ordner unter Ihrem Commerce-Installationsordner:

    code language-bash
    rm -rf var/cache/* var/page_cache/* var/session/*
    
  2. Navigieren Sie zu einer beliebigen Seite in der Storefront.

  3. Melden Sie sich beim Administrator an und navigieren Sie zu mehreren Seiten.

    Wenn keine Fehler angezeigt werden, gratulieren! Memcached funktioniert! Sie können sich optional den zwischengespeicherten Speicher ansehen, wie im nächsten Schritt beschrieben wird.

    Wenn Fehler angezeigt werden (z. B. HTTP 500 (Interner Server-Fehler), aktivieren Sie den Entwicklermodus und diagnostizieren Sie das Problem. Vergewissern Sie sich, dass die zwischengespeicherten Dateien ausgeführt und ordnungsgemäß konfiguriert werden und dass env.php hat keine Syntaxfehler.

  4. (Optional.) Verwenden Sie Telnet, um sich den zwischengespeicherten Speicher anzusehen.

    code language-bash
    telnet <memcached host or ip> <memcached port>
    
    code language-bash
    stats items
    

    Die Ergebnisse weisen folgendes Format auf:

    code language-terminal
    STAT items:3:number 1
    STAT items:3:age 7714
    STAT items:3:evicted 0
    STAT items:3:evicted_nonzero 0
    STAT items:3:evicted_time 0
    STAT items:3:outofmemory 0
    STAT items:3:tailrepairs 0
    
    [Look at the keys in more detail](https://darkcoding.net/software/memcached-list-all-keys/)
    
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c