java – 如何分析OSGi部署的执行情况?
作者:互联网
我正在开始为应用程序开发OSGi包,该应用程序将部署在具有某些硬件限制的设备中.我想知道如何分析该bundle的执行情况,以确保它能够适应最终设备中的依赖关系.让分析器知道每个捆绑包使用多少内存,本地化瓶颈并比较同一服务的不同实现,这将是一件好事.
是否有任何用于OSGi部署的探查器或我应该使用通用Java探查器?
为了开发我正在使用Pax runner和Apache felix运行bundle和maven来管理项目依赖和构建.
解决方法:
我公司为嵌入式设备开发OSGi应用程序.不幸的是,我不知道任何具有您正在寻找的所有功能的工具.我可以告诉你我们如何处理你正在寻找的那类问题.
1)适合设备:我们在Eclipse中开发并使用Equinox进行部署.我们在Eclipse中使用.product文件构建.通过这样做,我们可以深入了解我们的程序将在设备上占用的磁盘/ ROM空间量.
2)对于分析,我们通常使用YourKit.还有其他优秀的Java分析器,但我们发现这个适用于我们.
您可以做的一项好技术是构建一个充当真实服务代理的服务版本.代理是插入计时代码的好地方,因此您可以计算对每种服务方法进行的呼叫数量,并确定每次呼叫的时间.您还可以基于这种方式对时序进行分类,以查找性能不佳的边缘情况.然后,当您准备好部署时,您可以取出代理.
祝好运.
标签:java,profiling,osgi,apache-felix,pax-runner 来源: https://codeday.me/bug/20190627/1300522.html