4.6. 运维 & 统计 & 技术支持¶
4.6.1. 常规监控¶
-
监控的方式:主动、被动、旁路(比如舆情监控)
监控类型: 基础监控、服务端监控、客户端监控、 监控、用户端监控
监控的目标:全、块、准
核心指标:请求量、成功率、耗时
-
Zabbix、Nagios、Ganglia、Zenoss、Open-falcon、监控宝、 360网站服务监控、阿里云监控、百度云观测、小蜜蜂网站监测等。
命令行监控工具
-
top、sar、tsar、nload
4.6.2. APM¶
APM — Application Performance Management
主要开源软件,按字母排序
-
主要基于 Google的Dapper(大规模分布式系统的跟踪系统) 思想。
4.6.3. 统计分析¶
-
常用指标:访问与访客、停留时长、跳出率、退出率、转化率、参与度
-
第三方统计:友盟、百度移动、魔方、App Annie、talking data、神策数据等。
-
所谓无痕、即通过可视化工具配置采集节点,在前端自动解析配置并上报埋点数据,而非硬编码。
4.6.4. 持续集成(CI/CD)¶
Jenkins¶
环境分离¶
开发、测试、生成环境分离。
4.6.5. 自动化运维¶
Ansible¶
puppet¶
chef¶
4.6.6. 测试¶
TDD 理论¶
-
基于测试用例编码功能代码,XP(Extreme Programming)的核心实践.
好处:一次关注一个点,降低思维负担;迎接需求变化或改善代码的设计;提前澄清需求;快速反馈;
单元测试¶
-
TestNG 覆盖 JUnit 功能,适用于更复杂的场景。
-
模块接口测试、局部数据结构测试、路径测试 、错误处理测试、边界条件测试 。
压力测试¶
全链路压测¶
A/B 、灰度、蓝绿测试¶
4.6.7. 虚拟化¶
KVM¶
Xen¶
OpenVZ¶
4.6.8. 容器技术¶
Docker¶
4.6.9. 云技术¶
OpenStack¶
4.6.10. DevOps¶
4.6.11. 文档管理¶
GitLab?
Wiki