2016-03-19 18 views
0

Ich habe 6 Seiten erstens sind alle auf dem gleichen dedizierten Server, erhalten 2 der Seiten sehr stetigen Verkehr. Ich würde sagen, sie sind immer mindestens 90 bis 120 Leute auf den 2 Seiten und 15 bis 25 auf dem Rest.Server niedergebrannt bei Verwendung von eBeSucher Verkehr Austausch

Die Seiten laufen derzeit bis zu den letzten 3 Tagen, wenn eine bezahlte Traffic-Share-Firma aufgerufen wurde, die anderen 4 Sites genauso viel Verkehr wie die Haupt-alle auf dem gleichen Server gehostet - verursacht die Website sofort Zeitüberschreitung vor eine richtige Anfrage zu machen und wenn es sich entscheidet, nach 2 bis 3 Aktualisierungen zu laden, dauert ein paar plus 30 Sekunden vor dem Hochziehen. Die Seiten beginnen jedoch schneller zu laden, sobald Sie anfangen, nach innen zu klicken, aber werden immer zu kurz zurückfallen.

Ich habe mysqltuner verwendet, um Änderungen an der my.cnf Datei vorzunehmen - aber die Einstellungen funktionieren nicht wie erhofft. Und sie nicht nur an die richtige Einstellung anpassen. Der Server ist 20 TB und hat mehr Bandbreite, um sich selbst zu unterstützen.

Die Seiten sind alle Wordpress mit WP-Super Cache installiert, so sollte es mehr als schnell sein. Unten sind meine Einstellungen für die Konfiguration, von denen ich sicher bin, dass sie ein wenig aus dem Gleichgewicht geraten sind. Bitte beachten Sie, dass Tabellenfehler zur Bereinigung keine Tabellen von den WP-Sites sind und nichts mit der Performance zu tun haben.


MySQLTuner Ergebnisse

-------- Performance Metrics ------------------------------------------------- 
[--] Up for: 10h 23m 10s (11M q [295.373 qps], 666K conn, TX: 77G, RX: 1G) 
[--] Reads/Writes: 50%/50% 
[--] Binary logging is disabled 
[--] Total buffers: 4.8G global + 4.6M per thread (1000 max threads) 
[OK] Maximum reached memory usage: 5.3G (67.58% of installed RAM) 
[!!] Maximum possible memory usage: 9.3G (119.39% of installed RAM) 
[OK] Slow queries: 0% (678/11M) 
[OK] Highest usage of available connections: 10% (104/1000) 
[OK] Aborted connections: 0.08% (528/666673) 
[OK] Query cache efficiency: 69.3% (2M cached/3M selects) 
[!!] Query cache prunes per day: 130766 
[OK] Sorts requiring temporary tables: 0% (109 temp sorts/179K sorts) 
[!!] Temporary tables created on disk: 58% (111K on disk/191K total) 
[OK] Thread cache hit rate: 99% (120 created/666K connections) 
[OK] Table cache hit rate: 40% (2K open/5K opened) 
[OK] Open file limit used: 19% (1K/10K) 
[OK] Table locks acquired immediately: 99% (1M immediate/1M locks) 

-------- MyISAM Metrics ------------------------------------------------------ 
[!!] Key buffer used: 29.0% (19M used/68M cache) 
[OK] Key buffer size/total MyISAM indexes: 65.0M/64.1M 
[OK] Read Key buffer hit rate: 100.0% (30M cached/13K reads) 
[!!] Write Key buffer hit rate: 13.0% (239K cached/208K writes) 

-------- InnoDB Metrics ------------------------------------------------------ 
[--] InnoDB is enabled. 
[!!] InnoDB buffer pool/data size: 4.0G/8.7G 
[!!] InnoDB buffer pool instances: 1 
[!!] InnoDB Used buffer: 23.71% (62152 used/ 262144 total) 
[OK] InnoDB Read buffer efficiency: 99.99% (390201875 hits/ 390245584 total) 
[!!] InnoDB Write Log efficiency: 85.21% (1596393 hits/ 1873419 total) 
[OK] InnoDB log waits: 0.00% (0 waits/277026 writes) 

-------- ThreadPool Metrics -------------------------------------------------- 
[--] ThreadPool stat is disabled. 

-------- AriaDB Metrics ------------------------------------------------------ 
[--] AriaDB is disabled. 

-------- TokuDB Metrics ------------------------------------------------------ 
[--] TokuDB is disabled. 

-------- Galera Metrics ------------------------------------------------------ 
[--] Galera is disabled. 

-------- Replication Metrics ------------------------------------------------- 
[--] No replication slave(s) for this server. 
[--] This is a standalone server.. 

-------- Recommendations ----------------------------------------------------- 
General recommendations: 
    Run OPTIMIZE TABLE to defragment tables for better performance 
    Set up a Secure Password for [email protected] (SET PASSWORD FOR 'user'@'SpecificDNSorIp' =                     PASSWORD('secure_password');) 
    MySQL started within last 24 hours - recommendations may be inaccurate 
    Reduce your overall MySQL memory footprint for system stability 
    Increasing the query_cache size over 128M may reduce performance 
    Temporary table size is already large - reduce result set size 
    Reduce your SELECT DISTINCT queries without LIMIT clauses 
Variables to adjust: 
    *** MySQL's maximum memory usage is dangerously high *** 
    *** Add RAM before increasing MySQL buffer variables *** 
    query_cache_size (> 128M) [see warning above] 
    innodb_buffer_pool_size (>= 8G) if possible. 
    innodb_buffer_pool_instances(=4) 

Und das ist die Datei my.cnf

[mysqld] 
# Settings user and group are ignored when systemd is used. 
# If you need to run mysqld under different user or group, 
# customize your systemd unit file for mysqld according to the 
# instructions in http://fedoraproject.org/wiki/Systemd 
datadir=/var/lib/mysql 
socket=/var/lib/mysql/mysql.sock 
tmpdir=/dev/shm 
# Disabling symbolic-links is recommended to prevent assorted security risks 
symbolic-links=0 

open_files_limit=10000 
query_cache_size=128M 
query_cache_type=1 
max_connections=1000 
max_user_connections=25 
wait_timeout=300 
tmp_table_size=512M 
max_heap_table_size=512M 
thread_cache_size=64 
key_buffer_size=65M 
max_allowed_packet=268435456 
table_cache=2048 
table_definition_cache=2048 

#delayed_insert_timeout=20 # Turn on if max_connections being reached due to delayed inserts 
#delayed_queue_size=300 # Turn on if max_connections being reached due to delayed inserts 

myisam_sort_buffer_size=32M # can be increased per sessions if needed for alter tables (indexes, repair) 

query_cache_limit=2M # leave at default unless there is a good reason 
join_buffer=2M # leave at default unless there is a good reason 
sort_buffer_size=2M # leave at default unless there is a good reason 
#read_rnd_buffer_size=256K # leave at default unless there is a good reason 
#read_buffer_size=2M # leave at default unless there is a good reason 

collation_server=utf8_unicode_ci 
character_set_server=utf8 

general_log=0 
slow_query_log=1 
log-output=TABLE # select * from mysql.general_log order by event_time desc limit 10; 
long_query_time=5 # select * from mysql.slow_log order by start_time desc limit 10; 

low_priority_updates=1 
innodb_file_per_table=1 

innodb_buffer_pool_size=4G # check mysql -e "SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool%';" - free vs total 
innodb_additional_mem_pool_size=62M 
innodb_log_buffer_size=62M 
innodb_thread_concurrency=8 # Number of physical + virtual CPU's, preset when server is provisioned to have correct # of cores 

default-storage-engine=MyISAM 
[mysqld_safe] 

Ich habe hier Traffic-Sharing-Sites können Sie verletzt von über Pingen Serverstatistik des Verkehrs zu erhalten Sie schicken Ihnen - nicht sicher, ob dies ein Kaninchen-Loch lohnt sich zu senken oder seine nur schlechte Konfiguration an meinem Ende. Jede Hilfe, Gedanken oder Ideen würden am meisten geschätzt.

Vielen Dank!

Antwort

0

"Fragmentierte Tabellen" - gefälscht; lauf nicht optimieren.

"gefährlich hohe Speichernutzung" - nein, ist es nicht. Aber um es zu schließen, verringern Sie max_connections zu 200.

query_cache_size ist etwas hoch bei 128M; Erhebe es nicht.

Viele plattenbasierte tmp-Tabellen - Untere long_query_time auf 1 (zweite) und den SlowLog einschalten. Komm nach ein oder zwei Tagen zurück und lass uns sehen, was die unanständigen Fragen sind. Beachten Sie, dass dadurch auch die "langsamen Abfragen" über 0% hinausgehen. Ich sehe, dass Sie es eingeschaltet und an einen Tisch gesendet haben. Verwenden Sie also select * from mysql.slow_log order by query_time desc limit 5, um die interessanten Abfragen zu erhalten. Lassen Sie uns sie zusammen mit SHOW CREATE TABLE besprechen.

Die Metriken MyISAM und InnoDB sind nicht so schlecht; keine Handlung nötig.

tmp_table_size=512M und max_heap_table_size=512M sind gefährlich hoch; Halte sie unter 1% RAM.

table_cache=2048 - selbst in den ersten 10 Stunden nach dem Aufstehen gibt es etwas Prügel; erhöhen auf 4K.

Sie scheinen sowohl MyISAM als auch InnoDB zu verwenden.