
Hallo, ich habe einen LAMP-Stack, der eine Verbindung zu einem Solr 3.6.1-Server unter CentOS 6.3 herstellt. Beim Benchmarking meiner App sind mir plötzliche Spitzen in der Zeit aufgefallen, die PHP benötigt, um eine Suchanfrage an Solr zu senden und die Ergebnisse zurückzubekommen.
Diese Zeit beträgt normalerweise etwa 20–40 ms und bei Solr QTime
typischerweise 0–30 ms.
Meine Benchmark-Ergebnisse:
Start function msec
Creating the query 2.50196456909 msec
Executing query and getting results (PHP & Solr) 37.4531745911 msec
\->Executing query (as reported by Solr QTime) 21 msec
Processing Solr results
Problem:Executing query and getting results (PHP & Solr)
Manchmal dauert dieser Schritt jedoch über 2000 ms, und Solr meldet weiterhin 0-30 ms QTime
. Dies lässt mich vermuten, dass möglicherweise ein Problem bei den Verbindungen zwischen PHP/Apache und Solr vorliegt.
Wie kann ich feststellen, ob dies zutrifft, oder diese Verbindung verbessern?
Antwort1
- Zum
curl
Replizieren einer Suchanfrage - Wiederholen Sie die Übung
curl
und prüfen Sie, ob Sie die gleichen Antwortzeiten erhalten - Führen Sie die Schleife gleichzeitig mit dem Aufrufen der PHP-App aus und prüfen Sie, ob es Unterschiede gibt.
- Verwenden Sie Wireshark/tcpdump, um zu überprüfen, was mit der Socket-Verbindung passiert