源码解析 --skywalking agent 插件加载流程

本文详细介绍了SkyWalking Agent的插件加载流程,从插件介绍、插件机制到源码解析环境设置,再到具体加载步骤和插件定义,帮助读者理解SkyWalking如何通过插件实现对不同软件的监控。通过源码分析,展示了如何构建插件、加载插件以及插件如何与主应用程序交互的过程。
摘要由CSDN通过智能技术生成

1. 插件

目前很多框架,都采用框架 + 插件的模式开发。

如DataX、FlinkX通过插件支持众多异构数据源, Skywalking通过插件实现针对很多软件如redis、mysql、dubbo等方法执行信息采集。

本文针对 skywalking agent 插件加载流程进行源码解析,理解插件的接口定义、加载机制

针对skywalking agent的插件开发指导,请参考:https://github.com/apache/skywalking/blob/master/docs/en/guides/Java-Plugin-Development-Guide.md

1.1. 插件介绍

插件Plugin(Plug-in, addin, add-in, addon或add-on)是一种计算机应用程序,它和主应用程序(host application)互相交互,以提供特定的功能。

插件是一种可以热插拔的(动态安装和卸载),可以实现一定功能性并且对目前现有运行系统不会产生任何影响的一种松散耦合的设计模式,而且易扩展,可以让更多的开发者参与进来,让产品自身的功能更加丰富彩,它也可以通过动态的安装组合,实现不同的产品架构。

1.2. 插件机制

主应用程序提供给插件可以使用的服务,让插件在主应用程序中注册插件本身,以及和插件进行数据交换的协议。

插件依赖于主应用程序提供的这些服务,通常不能独立运行。相反地,主应用程序和插件是分离的,这就使得我们可以不改变主应用程序而动态增加或更新插件。

主应用程序提供一套插件接口规范及插件开发流程,允许第三方编写插件和主应用程序交互。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

enjoy编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值