4. 术语介绍
4.1 APM
即 Application Performance Monitor 应用性能监控,帮助程序员优化系统性能的技术体系。
作用:收集,分析和可视化应用程序的运行时数据(如 响应时间、吞吐量、错误率等)。
前文的 CAT 和 SkyWalking 就是 APM 工具。
4.2 OAP
即 Observability Analysis Platform 观测分析平台。
SkyWalking 架构通常包含 三个主要组件:探针(A gent),后端(B ackend),和前端(UI)。
OAP 是后端的重要组成,任务是 接受 、处理 、存储 探针给的可观测数据 ,并生成聚合指标。
4.3 Agent
探针,轻量 级数据采集 组件,通过 字节码植入 技术,无侵入收集程序运行时数据。
4.4 UI
前端的可视化界面。
其通过 RESTful API 从 OAP 获取数据,支持图表化展示与交互式筛选,提供 Web 控制台,展示服务拓扑、调用链路、实时指标、告警信息等。
4.5 Metrics
指标,如服务响应时间,服务成功率等
4.6 Endpoint
服务实例中 接受,处理外部请求的具体入口点。比 service 更细粒度的监控单元,用于描述服务内部的接口和方法级别的访问路径。
在这里可以粗暴的理解为服务的接口。
5. 安装部署 SW
5.1 下载
下载地址:https://skywalking.apache.org/downloads/
这里我们下载:SkyWalking APM (10.2.0)和 Java Agent(9.4.0)。
8.8.0 之后,apm 和 agent 就分开安装了
如果没有找到这个版本,就翻到网页最下面的链接,跳转下载对应版本。
解压这两个文件,并在 \apache-skywalking-apm-10.2.0\apache-skywalking-apm-bin的下创建 agent 文件夹,

将刚才解压的 agent 包的全部内容(如下图),剪切到创建的 agent 文件夹下。

5.2 web 界面配置
配置 web 界面的端口:
\apache-skywalking-apm-10.2.0\apache-skywalking-apm-bin\webapp 下的 application.yml 文件。8080 是 tomcat 的默认端口,不该这里,就改服务的端口。

skywalking-oap-server 服务(oap模块的实际运行实例)启动后,会暴露 11800 和 12800 两个端口
11800:grpc 端口,接受 skywalking agent 的监控数据
12800: REST API 端口,提供 RESTful API 服务,供 skywalking UI 或其他外部系统调用,用于查询监控数据
5.3 数据库配置
5.3.1 相关知识简介
skywalking 支持多种存储,这里介绍几种:
-
H2
2025 年前,一直是 sw 的默认的,直接启动不用配置。
其采用 内存模式,随让可以直接上手,但是 H2 的该模式会在运行约 20 分钟后,丢失数据,且其行为没有任何预警。
后采用 BanyanDB 作为默认配置。
-
MySql
skywalking 一直支持 mysql 作为存储选项。
MySQL 对 中小型规模的数据友好,部署,运维成本低。
但是 分库分表复杂,不适应千亿级数据的分布式存储需求。 此外,其对时间序列数据的聚合查询速率远低于 ES,复杂查询易成瓶颈。
适于学习,测试环境,或小数据量环境。
-
Elasticsearch
2025 年前,一直是 skywalking 官方推荐的生产环境的存储选项。
ES 基于倒排索引和分片机制,擅长处理海量时序数据的查询与聚合分析。集群分片后能应对 PB 级数据存储需要。此外,社区支持广泛。
但是,运维成本高,要单独部署 ES 集群,资源消耗大,性价比不高。
-
BanyanDB
skywaling 的原生数据库,2025年已经生产可用。
主要面向 APM 领域,专为处理 Metrics(指标)、Tracing(追踪)、Logging(日志)三类可观测数据设计。
BanyanDB 专为云原生架构设计,能够处理更大工作负载,无需担心数据丢失,且设计简单,使用门槛低。
这里使用 MySQL 作为配置,其他的使用和其类似。
5.3.2 驱动放置
将 mysql 的驱动 jar 包放在该路径下
\apache-skywalking-apm-10.2.0\apache-skywalking-apm-bin\oap-libs

5.3.3 配置修改
修改文件,图片中的地方。
\apache-skywalking-apm-10.2.0\apache-skywalking-apm-bin\config\application.yml


这里数据库名字自拟,但是要和 yml 文件中对照。
5.3.4 启动&访问
\apache-skywalking-apm-10.2.0\apache-skywalking-apm-bin\bin

访问http://127.0.0.1:8902/ 如果有如下界面说明配置成功。(首次加载速度较慢)
