Heim  >  Artikel  >  Backend-Entwicklung  >  Wie implementiert PHP das Abfrage-Timeout beim Zugriff auf MySQL?

Wie implementiert PHP das Abfrage-Timeout beim Zugriff auf MySQL?

coldplay.xixi
coldplay.xixiOriginal
2020-08-27 09:16:232872Durchsuche

PHP implementiert die Abfrage-Timeout-Methode für den Zugriff auf MySQL: 1. Ändern Sie den Client, z. B. den Abfragecode von MySQL, fügen Sie einen Timer hinzu und kehren Sie zurück, wenn ein Timeout auftritt. 2. Ändern Sie den VIO-Code in MySQL, da er die unterste Ebene von MySQL ist Die Netzwerkverarbeitung erfolgt über den VIO-Betrieb. 🔜 sql in Bietet eine API zum Festlegen verwandter Einstellungen, mysql_options:

Derzeit unterstützt nur MySQL

<?php
$mysqli = mysqli_init();
$mysqli->options(11 /*MYSQL_OPT_READ_TIMEOUT*/, 1);
$mysql->real_connect(***);
Wie implementiert PHP das Abfrage-Timeout beim Zugriff auf MySQL?Da es in libmysql jedoch einen Wiederholungsmechanismus gibt (einmal versuchen, zweimal wiederholen), beträgt der von uns festgelegte Timeout-Schwellenwert letztendlich das Dreifache Wert, den wir festlegen.

Mit anderen Worten, wenn wir MYSQL_OPT_READ_TIMEOUT auf 1 setzen, kommt es nach 3 Sekunden zu einer Zeitüberschreitung. Mit anderen Worten, die kürzeste Zeitüberschreitung, die wir derzeit festlegen können, beträgt 3 Sekunden...1. Ändern Sie den Client, z. B. den Abfragecode von MySQL, fügen Sie einen Timer hinzu und geben Sie 2 zurück, wenn eine Zeitüberschreitung auftritt. Ändern Sie den Vio-Code in MySQL, da die unterste Ebene der Netzwerkverarbeitung von MySQL von Vio betrieben wird. Wenn Sie mehr darüber erfahren möchten, lesen Sie bitte die Spalte „PHP-Training“!

Das obige ist der detaillierte Inhalt vonWie implementiert PHP das Abfrage-Timeout beim Zugriff auf MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn