不少人都是第一次据说 APM 的概念,本文主要阐述如何使用 APM 的解决方案来实现 PHP 应用性能的优化。首先先介绍一下 APM (Application Performance Management)即应用性能管理,对企业系统即时监控以实现对应用程序性能管理和故障管理的系统化的解决方案。php
应用性能管理是一个比较新的网络管理方向,主要指对企业的关键业务应用进行监测、优化,提升企业应用的可靠性与质量,保证用户获得良好的服务,下降 IT 总全部成本(Total Cost of Ownership,简称 TCO)。一个企业的关键业务应用的性能强大,能够提升竞争力,并取得商业成功,所以,增强应用性能管理(APM)能够带来巨大商业利益。html
兼容性和安装要求前端
本文,以国内应用性能管理领军企业 OneAPM举例,他们支持的应用服务器和应用框架以下表所示:mysql
###1.操做系统linux
CentOS 5.5 以上 Ubuntu 11 以上 RedHat Enterprise Linux (RHEL) 5 及以上sql
###2.PHP 版本 PHP 5.2.13 及以上 PHP 5.3 及以上 PHP 5.4 及以上 PHP 5.5 及以上 PHP 5.6 及以上数据库
###3.数据库json
mysql [mysql , pdo , mysqli]后端
###4.WebServer Apache 的 mod_php 模式(线程安全与非线程安全) FastCGI 模式(例如:php-fpm)浏览器
###5.明确不支持的框架 Yaf
###6.能够安装的框架
Wordpress Drupal Magento Zend CakePHP Codelgniter Symfony Laravel ThinkPHP Discuz Yii 全部基于 PHP 语言写的框架均可以安装 PHP-Agent
###7.兼容的扩展
<table> <tbody> <tr><td>bz2</td><td>calendar</td><td>Core</td></tr> <tr><td>ctype</td><td>curl</td><td>date</td></tr> <tr><td>dom</td><td>ereg</td><td>exif</td></tr>
<tr><td>fileinfo</td><td>filter</td><td>ftp</td></tr> <tr><td>gd</td><td>gettext</td><td>gmp</td></tr> <tr><td>hash</td><td>iconv</td><td>imap</td></tr> <tr><td>json</td><td>ldap</td><td>libxml</td></tr> <tr><td>mysql</td><td>mysqli</td><td>odbc</td></tr> <tr><td>openssl</td><td>pcntl</td><td>pcre</td></tr> <tr><td>PDO</td><td>pdo_mysql</td><td>PDO_ODBC</td></tr>
<tr><td>pdo_sqlite</td><td>Phar</td><td>readline</td></tr> <tr><td>Reflection</td><td>session</td><td>shmop</td></tr> <tr><td>SimpleXML</td><td>pdo_mysql</td><td>sockets</td></tr> <tr><td>SPL</td><td>sqlite3</td><td>standard</td></tr> <tr><td>tokenizer</td><td>wddx</td><td>xml</td></tr> <tr><td>xmlreader</td><td>xmlrpc</td><td>xmlwriter</td></tr> <tr><td>xsl</td><td>zip</td><td>zlib</td></tr>
</tbody> </table>
##功能
###1.应用架构自动建模 下载探针并安装就绪后,平台会自动识别并加载服务器上的应用
###总览全局性能 应用首页的应用性能总览,可以让你迅速感知应用的健康程度和整体性能状态与问题。以总览为入口,能够轻松追溯至地理信息、关键事务、错误统计等性能度量点,完成应用性能管理工做。在应用性能总览中,包括如下信息:响应时间,性能指数,吞吐量(单位:rpm 每分钟请求数),关键事务,错误率,近期事件,服务器信息
###自动分析应用程序拓扑
Web 事务
慢事务追踪
2.代码级别的性能诊断
3.数据库 详情
慢 SQL 诊断
4.外部服务
5.后端监控
6.错误信息
7.报表 Web 事务 数据库
8.设置 服务器环境 自定义事务
9.关键事务
9.报警策略 报警策略可为应用程序,关键事务分别设置 设置方法以下
a.触发 性能指数 设置多少分钟内为 警示值 设置多少分钟内为 发送警报
错误率 设置多少百分的平均错误率在多少分钟内为 警示值 设置多少百分的平均错误率在多少分钟内为 发送警报
b.通知方式 邮件,短信,邮件+短信
c.分派 应用 设置具体哪些应用采用此策略
用户 设置具体哪些用户为此策略响应
告警集成 alert 说明-----此处需修改
报警记录 报警记录类别分为 通知、宕机、严重问题、告警问题
1.获取受权编号 服务器会自动生成「License Key」受权编号
2.下载 从页面中下载 OneAPM PHP Agent
或使用 wget 在线获取安装包
3.安装 解压 Agent 安装包
tar -xzf OneAPM_php_Agent_latest.tar.gz 定位至「安装包所在路径」
cd oneapm-php5-linux-install-script 执行安装脚本
sudo ./oneapm-install 在提示输入「License Key」时,输入「License Key」
等待安装脚本执行。若出现如下信息,则安装成功。
OneAPM is now installed on your system. Congratulations!
4.重启 重启 Apache 或 php-fpm。 而后,稍等片刻,等待 OneAPM 接收 Agent 发送的数据。
查阅更多文档
团队
其余产品
###详悉错误报告
不管是私人数据中心,仍是公共云,亦或是 Hybrid-Cloud,OneAPM 一样适用。
按照浏览器和地理信息 2 种分类方式,对真实用户的页面加载时间等性能数据进行查看,快速区隔出须要优化性能的浏览器类型和区域用户。
关键事务 Top 5,平均响应时间、吞吐量这些性能查看方式,帮助你快速定位性能瓶颈;事务的深度 Traces 记录,协助你完成应用性能管理从抽象到具象的追溯过程。
智能的报警机制,在性能瓶颈出现前,修复性能问题,防止性能问题致使用户流失。
OneAPM 提供整齐划一的界面,让你可以无障碍地完成从真实用户体验,到应用服务器,直至应用代码的端到端应用性能管理。
OneAPM 支持团队协助,可以帮助一个团队完成应用性能管理工做,包括:事务的深度性能剖析、浏览器 Traces 记录查看、关键事务性能分析、事务 Traces 记录查看。
OneAPM 是国内首家支持 PHP 的应用性能管理云解决方案,经过 Saas 向用户提供统一的入口、友好的界面、便捷的流程,来管理和监控应用程序的性能,并完成从前端、到网络、直至应用代码的端到端应用性能管理,让你随时随地变身运维专家。
OneAPM 面向开发者和中小型企业,无需企业级的花费,就能够达到企业级的应用性能管理效果。基础设施监控、多语言支持、真实用户体验监控、事务深度追溯和分析,使用 OneAPM 就能够帮你所有搞定 !