Как определить, медленное ли соединение PHP-to-Solr?

У меня есть стек LAMP, подключающийся к серверу Solr 3.6.1, работающему на CentOS 6.3. При тестировании моего приложения я заметил внезапные всплески времени, затрачиваемого PHP на отправку поискового запроса в Solr и получение результатов обратно.

Это время обычно составляет около 20-40 мсек и Солр QTime обычно 0-30 мсек.

Мои результаты теста:

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

Проблема: Однако иногда этот шаг Executing query and getting results (PHP & Solr) будет стрелять до 2000+ мсек, а Solr продолжает сообщать 0-30 мсек QTime, Это заставляет меня подозревать, что может быть проблема в соединениях между PHP/Apache и Solr.

Как я могу определить, правда ли это, или сделать эту связь лучше?

1 ответ

Решение
  1. использование curl повторить поисковый запрос
  2. петля curl и посмотреть, если вы получите то же время ответа
  3. Запустите цикл одновременно с подключением к приложению PHP и посмотрите, есть ли несоответствие.
  4. Используйте Wireshark/tcpdump, чтобы проверить, что происходит с соединением сокета
Другие вопросы по тегам