微服务场景下性能问题排查神器之xrebel

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 对于java应用性能跟踪其实有很多种手段,本文只是针对xrebel的使用做一些简单讲解(单体应用和微服务应用)。分布式跟踪有很多,比如zipkin等。zipkin太重,不适合开发阶段使用。

对于java应用性能跟踪其实有很多种手段,本文只是针对xrebel的使用做一些简单讲解(单体应用微服务应用)。分布式跟踪有很多,比如zipkin等。zipkin太重,不适合开发阶段使用。本文介绍的xrebel是一个适合小团队开发时期使用的idea(Eclipse)插件。如果对zipkin想了解,可以参考dubbo分布式系统链路追踪_zipkin.

xrebel下载

快速安装

  1. 下载xrebel.zip, 并解压到本地,例如:D:/xrebel注意路径中不要有中文不要有空格
  2. 在tomcat也好,idea,eclipse也好,修改vm 参数,添加 -javaagent:[path/to/xrebel]/xrebel.jar

配置demo

  • idea


    img_bd9983d85083d4da94bd272b88f69ba9.png
    image.png
  • eclipse


    img_8b2f89d523ee1c4b108e86baf4af04f6.png
    image.png

默认是可以试用14天的,建议支持正版,毕竟大家都是吃这行饭的。上述下载方式中百度云里下载包含破解文件。具体破解方式参考下文。

启动项目

1、项目启动时控制台出现如下日志

Connected to the target VM, address: '127.0.0.1:56732', transport: 'socket'
XRebel: Starting logging to file: C:\Users\10400\.xrebel\xrebel.log
2017-12-21 15:40:16 XRebel: 
2017-12-21 15:40:16 XRebel: ################################################################
2017-12-21 15:40:16 XRebel: 
2017-12-21 15:40:16 XRebel:  XRebel 3.1.3 (201607291040)
2017-12-21 15:40:16 XRebel:  (c) Copyright ZeroTurnaround AS, Estonia, Tallinn.
2017-12-21 15:40:16 XRebel: 
2017-12-21 15:40:16 XRebel:  For questions and support, contact xrebel@zeroturnaround.com
2017-12-21 15:40:16 XRebel: 
2017-12-21 15:40:16 XRebel: ################################################################
2017-12-21 15:40:16 XRebel: 
2017-12-21 15:40:16.719 [auth-service] [main] WARN  [com.br.auth.AuthApplication] -启动demo服务
2017-12-21 15:40:17.027 [auth-service] [restartedMain] WARN  [com.br.auth.AuthApplication] -启动demo服务
...........

2、项目页面左下角有如下图标


img_47f17579009ac42326a80c78062c2678.png
image.png

激活xrebel

img_1a0df06ddb3d18310e933c41bbc05db4.gif
demo.gif

xrebel 简单使用教程

打开 web 服务页面,xrebel会直接注入到你的页面中,左下角会出现xrebeltoobar,例如:http://localhost:18601。或者通过 访问服务/xrebel 打开单独页面,适用于webservice,restful 等无页面场景。

img_99b0b6bce38a84cf114d1e4d1fa502b6.png
image.png
img_ccc6ceb759fc003473bac1ad5462bc03.png
image.png
img_6f95d1bf8426fe6d75ae73ad24cb2b68.png
image.png
img_5b645c75f431231b748212b5c2036176.png
image.png
img_a8981adf2a893ac2a2ed91adae3ef019.png
image.png
相关文章
|
存储 人工智能 Serverless
微服务和 Serverless 架构-函数计算 FC 简介及应用场景
微服务和 Serverless 架构-函数计算 FC 简介及应用场景
微服务和 Serverless 架构-函数计算 FC 简介及应用场景
|
4月前
|
Kubernetes Cloud Native Java
云原生之旅:从容器到微服务的演进之路Java 内存管理:垃圾收集器与性能调优
【8月更文挑战第30天】在数字化时代的浪潮中,企业如何乘风破浪?云原生技术提供了一个强有力的桨。本文将带你从容器技术的基石出发,探索微服务架构的奥秘,最终实现在云端自由翱翔的梦想。我们将一起见证代码如何转化为业务的翅膀,让你的应用在云海中高飞。
|
2月前
|
缓存 Java 数据库连接
使用 NCache 将 Java 微服务扩展到极致性能
使用 NCache 将 Java 微服务扩展到极致性能
35 8
|
3月前
|
缓存 安全 Java
如何利用Go语言提升微服务架构的性能
在当今的软件开发中,微服务架构逐渐成为主流选择,它通过将应用程序拆分为多个小服务来提升灵活性和可维护性。然而,如何确保这些微服务高效且稳定地运行是一个关键问题。Go语言,以其高效的并发处理能力和简洁的语法,成为解决这一问题的理想工具。本文将探讨如何通过Go语言优化微服务架构的性能,包括高效的并发编程、内存管理技巧以及如何利用Go生态系统中的工具来提升服务的响应速度和资源利用率。
|
3月前
|
缓存 负载均衡 数据管理
深入探索微服务架构的核心要素与实践策略在当今软件开发领域,微服务架构以其独特的优势和灵活性,已成为众多企业和开发者的首选。本文将深入探讨微服务架构的核心要素,包括服务拆分、通信机制、数据管理等,并结合实际案例分析其在不同场景下的应用策略,旨在为读者提供一套全面、深入的微服务架构实践指南。**
**微服务架构作为软件开发领域的热门话题,正引领着一场技术革新。本文从微服务架构的核心要素出发,详细阐述了服务拆分的原则与方法、通信机制的选择与优化、数据管理的策略与挑战等内容。同时,结合具体案例,分析了微服务架构在不同场景下的应用策略,为读者提供了实用的指导和建议。
|
4月前
|
存储 缓存 数据库
微服务+多级缓存:性能起飞的秘籍
【8月更文挑战第29天】在当今快速迭代的软件开发领域,高性能与可扩展性是企业应用不可或缺的两大支柱。微服务架构与多级缓存策略的完美结合,正是这一追求下的璀璨明珠。今天,我们将深入探讨这一组合如何助力系统性能“起飞”,并在实际工作学习中成为技术升级的关键推手。
66 0
|
4月前
|
消息中间件 NoSQL Kafka
go-zero微服务实战系列(九、极致优化秒杀性能)
go-zero微服务实战系列(九、极致优化秒杀性能)
|
4月前
|
Kubernetes Nacos 微服务
【技术难题破解】Nacos v2.2.3 + K8s 微服务注册:强制删除 Pod 却不消失?!7步排查法+实战代码,手把手教你解决Nacos Pod僵死问题,让服务瞬间满血复活!
【8月更文挑战第15天】Nacos作为微服务注册与配置中心受到欢迎,但有时会遇到“v2.2.3 k8s 微服务注册nacos强制删除 pod不消失”的问题。本文介绍此现象及其解决方法,帮助开发者确保服务稳定运行。首先需检查Pod状态与事件、配置文件及Nacos配置,确认无误后可调整Pod生命周期管理,并检查Kubernetes版本兼容性。若问题持续,考虑使用Finalizers、审查Nacos日志或借助Kubernetes诊断工具。必要时,可尝试手动强制删除Pod。通过系统排查,通常能有效解决此问题。
92 0
|
5月前
|
人工智能 物联网 开发者
**.NET技术革新赋能软件开发:从.NET 5的性能飞跃、跨平台支持,到微服务、物联网、AI和游戏开发的广泛应用。
【7月更文挑战第4天】**.NET技术革新赋能软件开发:从.NET 5的性能飞跃、跨平台支持,到微服务、物联网、AI和游戏开发的广泛应用。随着云集成深化、开源社区壮大,未来将聚焦性能优化、云原生应用及新兴技术融合,培养更多开发者,驱动软件创新。**
151 1
|
6月前
|
NoSQL Java 数据库
优化基于阿里云的微服务架构下的数据库访问性能
在应对大型电商项目中数据库访问性能瓶颈问题时,团队通过阿里云工具分析发现高QPS、慢查询和不合理数据交互是关键。优化措施包括:1) 索引优化,针对慢查询添加或调整索引;2) 开启读写分离,使用RDS读写分离功能和DRDS进行水平拆分;3) 引入Redis缓存热点数据,减少直接数据库访问;4) 服务化数据访问,降低跨服务数据库调用;5) 使用Sentinel进行限流和熔断,保护数据库资源。这些改进显著提升了系统响应速度和用户体验。
109 0