作者:小傅哥
博客:https://bugstack.cn
沉淀、分享、成长,让自己和他人都能有所收获!😄
这位同学,你比上一位面试者好多了,你的简历中做的几个项目都不错。既有业务项目,也有技术项目,看得出你对编程开发是有一定的经验积累的。那么我还想了解下,这些项目在运行中的一个数据效果是怎么样的。比如;tps、qps、响应时间、数据库负载等,都是什么情况,你用的什么监控工具。另外你这里还些了微服务的架构,那么微服务间的链路调用是怎么监控的。
咋样,是不一下就慌了。张口就喊:“java 崩盘!” 以前靠背题吹牛逼就能入职,现在得把吹的牛逼落地了。而越来越多的面试官也更喜欢用结果推过程,从过程中再考察细节。一上来就问八股文的越来越少了。
所以,做完项目,最好在配上对应的数据,这样才更有说服力。—— 所以本文小傅哥会教会你,如何配置一套全链路监控系统,并完成测试获取系统运行的数据。此外这是整套《@小傅哥 Java 简明教程》其中的一节,更多内容可以进入这里学习;https://bugstack.cn/md/road-map/road-map.html
一、章节目的

本章节通过 Docker 方式部署一套 skywalking 非入侵的全链路监控系统,并在对应的测试工程中通过 skywalking-agent 字节码增强组件,采集系统运行时的各项信息到 skywalking-ui 监控平台观察数据。
- 官网:https://skywalking.apache.org/ - 如果你想了解更多关于此类系统的设计和实现,可以阅读小傅哥的《字节码编程》
- 源码:https://gitcode.net/KnowledgePlanet/road-map/skywalking - 这是小傅哥整理好的一套可运行的监控和系统,读者可以下载后对照本文进行验证使用。
二、基本环境
- Docker version 1.13.1
- Docker compose - 用于在云服务器环境中执行的 docker-compose 文件
- Portainer Docker 容器管理面板
以上内容安装,参考【Java简明教程/发布部署】:https://bugstack.cn/md/road-map/road-map.html - 发布部署
三、监控配置
skywalking 的安装,需要 elasticsearch - 存放数据、skywalking-oap 接收数据、skywalking-ui 界面展示。以及还需要一个 skywalking-agent 用于配置到应用程序中,采集监控数据。注意这些内容在官网中,都已提供,地址:https://skywalking.apache.org/downloads/
因为小傅哥这里提供了Docker的自动部署以及下载好了 skywalking-agent 所以你就不需要一个个去下载安装了。接下来小傅哥会分别介绍在本地环境和云服务器两套环境安装,这样可以更加方便小伙伴做测试验证。
在进行下面的步骤前,请先下载 skywalking 监控工程;https://gitcode.net/KnowledgePlanet/road-map/skywalking