Рекомендуемое чтение
- Tideways, xhprof и xhgui Создают платформу для ненавязчивого мониторинга PHP
- Краткое введение в Супер-полные шаблоны проектирования (45 видов)
- Дизайн-шаблоны-для-людей Китайская версия
- Ресурсы MongoDB, Библиотеки, Инструменты, Список выбора приложений Китайская версия
- Какие существуют малоизвестные, но интересные сайты?
- Записка об Осадном льве
- Каждый день собирайте отличные проекты на Github
- Несколько интересных народных сказок
- Супер Полезный Браузер Google, Sublime Text, Phpstorm, Коллекция плагинов Oil Monkey
Подготовка к охране окружающей среды
Перед установкой убедитесь, что следующее программное обеспечение установлено правильно
- PHP
- Nginx
- Mongodb
Установите расширение PHP mongodb
$ sudo pecl install mongodb
Добавьте в файл конфигурации PHP
[mongodb] extension=mongodb.so
Установите расширение PHP Hideaways
Обычная компиляция и установка
$ git clone https://github.com/tideways/php-xhprof-extension.git $ cd /path/php-xhprof-extension $ phpize $ ./configure $ make $ sudo make install
Добавьте в файл конфигурации PHP
[tideways] extension=tideways_xhprof.so It does not need to be loaded automatically, so it can be controlled in the program. tideways.auto_prepend_library=0 The frequency is set to 100, which can be modified when the program is called. tideways.sample_rate=100
Установите xhgui-ветку (китайская версия xhgui)
$ git clone https://github.com/laynefyc/xhgui-branch.git $ cd xhgui-branch $ php install.php
Измените файл конфигурации xhgui-филиала
'tideways_xhprof', ... 'save.handler' => 'mongodb', 'db.host' => 'mongodb://127.0.0.1:27017', 'db.db' => 'xhprof', ... );
Запустите mongodb и установите индекс xhgui. Команда выглядит следующим образом:
$ mongo > use xhprof > db.results.ensureIndex( { 'meta.SERVER.REQUEST_TIME' : -1 } ) > db.results.ensureIndex( { 'profile.main().wt' : -1 } ) > db.results.ensureIndex( { 'profile.main().mu' : -1 } ) > db.results.ensureIndex( { 'profile.main().cpu' : -1 } ) > db.results.ensureIndex( { 'meta.url' : 1 } )
Справочник По Конфигурации Локального Виртуального Хоста Xhgui
server { listen 80; server_name xhgui.test; root /Users/yaozm/Documents/wwwroot/xhgui-branch/webroot; # access_log /usr/local/var/log/nginx/access.log; error_log /usr/local/var/log/nginx/error.log; location / { try_files $uri $uri/ /index.php?$query_string; index index.php index.html index.htm; } }
Для анализа сайта добавьте следующие элементы непосредственно в конфигурацию nginx анализируемого сайта, а затем сделайте конфигурацию эффективной.
$ fastcgi_param PHP_VALUE "auto_prepend_file=/path/xhgui-branch/external/header.php";
Эталонная конфигурация
server { listen 80; server_name laravel.test; root /Users/yaozm/Documents/wwwroot/laravel/public; # access_log /usr/local/var/log/nginx/access.log; error_log /usr/local/var/log/nginx/error.log; location / { try_files $uri $uri/ /index.php?$query_string; index index.php index.html index.htm; } # Add PHP_VALUE to tell the PHP program to call the service before execution fastcgi_param PHP_VALUE "auto_prepend_file=/path/wwwroot/xhgui-branch/external/header.php"; }
Или вы можете изменить файл конфигурации PHP, чтобы указать программе PHP вызывать службу перед выполнением.
; Automatically add files before PHP document. ; http://php.net/auto-prepend-file auto_prepend_file = "/path/wwwroot/xhgui-branch/external/header.php"
Ссылка на ссылку
- Ссылка на ссылку
- Ссылка на ссылку
- Ссылка на ссылку
- Ссылка на ссылку
- Ссылка на ссылку
- Ссылка на ссылку