本系统采用C++技术栈,并结合 Docker、gRPC、Protocol Buffers等工具和框架的分布式Linux性能分析监控系统。通过模块化的设计,该项目旨在实现对分布式Linux 系统的性能监控和分析。
1、Docker模块:用dockerfile指定CMake、gRPC、Protocol Buffers等多个依赖,在容器中构建整个项目环境,以便在多台服务器上部署环境。
2、Monitor模块:实现灵活的监控接口,能够有效地捕获CPU状态、系统负载、软中断、内存、网络等性能指标;为了模拟真实的性能问题,使用stress工具进行模拟压测,分析相应时刻服务器的cpu状况和终端状况。
3、调用gRPC框架:构建Server和Client,实现模块之间的远程连接,同时降低模块间的耦合性。
4、Protocol Buffers序列化:构建整个项目的数据结构,并确保高效的数据交换。
5、实现异步/同步的高性能日志系统,可以记录程序运行的状态。
./
├── assets => 资源文件
├── doc => 存放开发相关文档
├── docker => docker镜像相关
├── log_manager => 日志系统
├── monitor_work => 监控功能代码
├── proto => 定义protobuf
└── rpc_manager => grpc相关
Linux
C++、Docker、gRPC、protobuf、Cmake、异步日志
cd docker/scripts
./docker_build.sh./docker_run.sh./docker_into.sh./docker_rm_container.shdocker_rm_image.sh 如果有新的依赖导致dockerfile更新, 只要删除镜像再创建即可
进入容器后
cd work
mkdir build
cd build
cmake ..
make -j8在build文件夹下
./rpc_manager/server/server./monitor_work/src/monitor- 前端待做
如果你碰巧看见这个项目, 想要参与开发
可以查看这个文档 如何参与开源项目
如果想了解这个项目, 可以查看开发文档
GPL