2016-05-15 14 views
0

Ich habe ein PHP-Skript (HTTP API Web Service), die INSERT und SELECT Daten aus einer MySQL-Datenbank tut. Es hat 3 SELECT Abfragen und 2 INSERT Abfragen.Erhöhen Sie MySQL Abfragen pro Sekunde

Dies P> HP-Skript wird 10.000 mal pro Sekunde von anderen Servern über HTTP GET an eine URL aufgerufen wie http://myserver.com/ws/script.php?colum1=XXX&column2=XXX

jedoch nur 200 Datensätze pro Sekunde gespeichert werden.

Ich benutze einen Intel® Core (TM) Quad Core i7-3770 CPU @ 3.40GHz, 32 GB RAM, Cent 0S mit cpanel, 2TB SATA HDD.

Wie kann ich die Anzahl der Abfragen pro Sekunde erhöhen?

+0

Sie müssen die Frage bearbeiten Weitere Informationen zu den Abfragen und Datenstrukturen zur Verfügung zu stellen . Aller Wahrscheinlichkeit nach besteht die Lösung darin, bessere Hardware zu bekommen. –

+1

und vielleicht eine andere Datenbank (noSQL), die für große Datenmengen konzipiert ist und sehr schnelle Einsätze/wählt – Jeff

+0

@Jeff ich stimme dir zu, für mysql Server 10.000 Anfragen pro Sekunde kann dazu führen, dass keine Datenbankverbindung Fehler, Sie besser verwenden eine Art dokumentenbasierter Datenbank wie: mongodb, die viel schneller ist als mysql. –

Antwort

1

Hier sind einige Optionen Datenbank-Performance zu erhöhen

  • MySQL Query-Caching aktivieren, wenn nicht bereits aktiviert (http://dev.mysql.com/doc/refman/5.7/en/query-cache-configuration.html)
  • Indizes für Such Spalten
  • optimize Abfragen (zB durch Vermeidung von tiefen Unter wählt hinzufügen oder komplexe Abfragebedingungen oder Prüfrahmen/Orm für unnötige Join-Logik)
  • Motor wechseln (z. B. InnoDB zu MyISAM)
  • Verwendung eines mehr s calable dbms (z.B. MariaDB statt MySQL)
  • mit einem oder mehreren Spiegeln auf zusätzliche Hardware (Slave-Datenbanken nur zum Lesen) und mit einem Lastausgleich
+0

Ich habe bereits MySQL Query Caching aktiviert, Indizes hinzugefügt, MyISAM-Engine – user231410

Verwandte Themen