Frage

Hier ist ein Link zu, wie mein APC ausgeführt wird: [removed]

Wie Sie sehen können, füllt es ziemlich schnell und mein Cache Vollzählwert geht über 1000 mal

Meine Website benutzt Wordpress.

Ich stelle fest, dass jedes Mal, wenn ich einen neuen Beitrag oder bearbeiten eine Post, 2 Dinge passieren.

1) APC Memory "USED" zurückgesetzt 2) Ich bekomme eine ganze Menge Fragmente

Ich habe versucht, mehr Speicher zu APC geben (512 MB), aber dann stürzt es manchmal, so scheint es 384 am besten ist. Ich habe auch einen cron-Job, dass neu gestartet Apache, alle APC von Fragmenten und benutzten Speichern löschte, alle 4 Stunden. Auch hier ist meine Apache stürzt ab, wenn APC für eine lange Zeit läuft, denke ich an das Fragment Aufbau durch.

Sollte ich die apc.Filters und Filter aus ein paar Sachen, die nicht im Cache gespeichert werden sollte?

Ich bin wirklich Anfänger in dieser Art von Sachen, also wenn jemand mit vollen Anweisungen erklären kann, Vielen Dank !!!

War es hilfreich?

Lösung

Die APC ttl sollte Pflege Fragment Aufbau nehmen. Ich habe es in der Regel bei 7200. Ich kann es mit Wordpress und meine Einstellungen auf einem kleinen VPS leite sind:

apc.enabled=1
apc.shm_segments=3
apc.shm_size=32
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=2048
apc.mmap_file_mask=/tmp/apc.XXXXXX
apc.enable_cli=1
apc.max_file_size=10M

Sie werden auch viel mehr Nutzen daraus erhalten, indem mit Wordpress ist in Objekt-Cache gebaut und Mark Jaquith schrieb eine wirklich gute Drop in Plugin das sollte auch Hilfe bei einigen Ihrer Fragen Fragmentierung beim Speichern oder Bearbeiten eines Post.

Andere Tipps

Ich arbeite als Linux-Systeme Admin, die Wordpress-Server läuft 5 verschiedene Wordpress installiert. Wenn Sie nur eine ausgeführt wird, werde ich die Konfigurationen Kommentar zu berücksichtigen.

APC / PHP-Versionen, 3.1.9 / 5.3.7

Hier ist meine komplette apc.conf,

apc.enabled=1
apc.shm_segments=1

; I would try 32M per WP install, go from there
apc.shm_size=128M

; Relative to approx cached PHP files,
apc.num_files_hint=512

; Relative to approx WP size W/ APC Object Cache Backend, 
apc.user_entries_hint=4096

apc.ttl=7200
apc.use_request_time=1
apc.user_ttl=7200
apc.gc_ttl=3600
apc.cache_by_default=1
apc.filters
apc.mmap_file_mask=/tmp/apc.XXXXXX
apc.file_update_protection=2
apc.enable_cli=0
apc.max_file_size=2M

;This should be used when you are finished with PHP file changes.
;As you must clear the APC cache to recompile already cached files.
;If you are still developing, set this to 1.
apc.stat=0

apc.stat_ctime=0
apc.canonicalize=1
apc.write_lock=1
apc.report_autofilter=0
apc.rfc1867=0
apc.rfc1867_prefix =upload_
apc.rfc1867_name=APC_UPLOAD_PROGRESS
apc.rfc1867_freq=0
apc.rfc1867_ttl=3600

;This MUST be 0, WP can have errors otherwise!
apc.include_once_override=0

apc.lazy_classes=0
apc.lazy_functions=0
apc.coredump_unmap=0
apc.file_md5=0
apc.preload_path

@Chris_O , die Konfiguration ist nicht optimal in einigen Aspekten.

1. apc.shm_segments = 3

Wenn Sie einen modernen Linux-Distro laufen, Ihre SHM sollte sufficiantly groß genug sein. Wenn es zu klein Suche ist, wie man Satz sysctl.conf Einträge können Sie wie folgt überprüfen.

#Check Max Segment size
cat /proc/sys/kernel/shmmax

Ausnahme, wenn sie auf bestimmte BSDs läuft oder anderen Unix ist, oder verwalteten Hosts Sie nicht steuern. Es gibt Nachteile zu keinen zusammenhängenden Segment, lesen Details von APC für diese Informationen.

2. apc.enable_cli = 1

BAD BAD BAD, ist dies für Debug-only! Jedes Mal, wenn php-cli laufen, es löscht die APC-Cache.

3. apc.max_file_size = 10M

Unnötige und lächerlich! Wenn Sie eine Datei so groß hätte, würde es essen 1/3 dieser kleinen 32M SHM. Auch wenn Sie 3 angeben, sie wirken nicht nur wie ein großes Segment in drei Stücke. Unabhängig nicht WP nicht einmal einzelne PHP-Dateien hat sogar in der Nähe dieser Größe.

"Ich hoffe, die Menschen mit ihren apc.conf geholfen.

Sie sollten wirklich apc.stat = 0 auf dem Produktionsserver eingestellt und es wird APC verhindern, dass tatsächlich an den IO gehen zu überprüfen, ob die Datei geändert wurde.

Überprüfen Sie heraus Dokumentation zuerst: http://php.net/manual/en/apc .configuration.php

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top