JProfiler监控内存

使用Jprofiler分析内存溢出场景 持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,官方推荐配置为整个堆的3/8。发现一个tempList就占了将近4个G空间,直接把内存打满了。整个堆大小=年轻代大小+年老代大小+持久代大小。3、用Jprofiler打开hprof文件。一、配置VM options参数。执行请求就能生成hprof文件。2、模拟出现内存溢出代码。 阅读详情

JProfiler是一个全功能的Java剖析工具(profiler),专用於分析J2SE和J2EE应用程式。它把CPU、线程和记忆体的剖析组合在一个强大的应用中。JProfiler可提供许多IDE整合和应用服务器整合功能。JProfiler直觉式的GUI让你可以找到性能瓶颈、抓住内存泄漏(memory leaks)、并解决多线程的问题。它让你得以对heap walker作资源回收器的root analysis,可以轻易找出内存泄漏;heap快照(snapshot)模式让未被引用(reference)的对象, 稍微被引用的对象、或在终结(finalization)序列的对象都会被移除;整合精灵以便剖析瀏览器的Java外掛功能。

下载地址:
http://download.ej-technologies.com/jprofiler/jprofiler_windows_4_2_2.exe
解密过程:
将EJ[1].Technologies.JProfiler.v4.2.2.Incl.Keymaker-AGAiN压缩包中的jkgone.jar解压到
根目录或其它目录下运行如下命令.
java -jar jkgone.jar

附其它版本的注册码
http://download.ej-technologies.com/jprofiler/jprofiler_windows_3_3_1.exe
JProfiler 4.0
Name and Company: anything s/n: A-G666#76114F-1olm9mv1i5uuly#0126

JProfiler 3.3.1
s/n: A-XiV7#20128F-1nf9r2z1qepp2e#7120

EJ Technologies JProfiler 2.2.1 
S/N: A-DWP#OWNZ#YOU-212hyr 

JProfiler 3.3
S/N: A-XiV6#62267F-1tfbcghardqqd#16312<br>

JProfiler 3.2.0
S/N: A-GAiN#91584F-vd0mmz13mkf00#181013<br>or<br>A-GAiN#22031F-1giul8u16x7p65#121218<br>or<br>A-GAiN#98900F-1j62dw18rpusn#111117<br>

JProfiler 3.2
S/N: A-GAiN#70503F-l7qte9gtq77c#81111<br>or<br>A-GAiN#19132F-y2fnayai9yu8#141420<br>


目前最新版为4.3,大家可以申请试用10天,如果大家还需要其它版本的注册码回复

官方试用版下载:
http://www.ej-technologies.com/download/jprofiler/trial.php .

注册文件下载地址:

http://lyh007.gbaopan.com/files/245c5ad31b314e4abd6bb1c54e86ebbe.gbp

由于G宝盘只能传小于10MB文件,所以到主页公布的邮箱进行全部下载.


 

来自:http://www.anymobile.org
 

1、摘要..........................................................................1
2、改善服务器的性能...........................................................1
3、分析器原理...................................................................2
4、JProfiler 简介...............................................................2
5、JProfiler 特征...............................................................3
6、本地监控.....................................................................4
7、远程监控.....................................................................7
8、参考..........................................................................9

 

 

1 、 摘要

 

       改善 Java 服务器的性能需要模拟负载下的服务器。创建一个模拟环境、搜集数据并且分析结果可能是对许多开发人员的挑战。这篇文章介绍了使用 JProfiler 跟踪分析 Java 服务器的性能。

 

简单的性能问题很容易分离并解决,然而,大的性能问题,如内存溢出或者系统的罢工,通常在系统处于高负载情况下发生,就不能这么简单的处理了。这些问题需要一个独立的测试环境、一个模拟的负载,并且需要仔细地分析和跟踪。

 

在这篇文章中,我使用比较通用的工具( JProfiler 和 JBuilder )和设备创建了一个性能监控分析环境,跟踪本地和远程的服务器程序,专注于三个性能问题:内存、垃圾回收和多线程运行状况,从而很好的监视 JVM 运行情况及其性能。

2 、改善服务器的性能

 

服务器的性能改善是依赖于数据的。没有可靠的数据基础而更改应用或环境会导致更差的结果。分析器提供有用的 Java 服务器应用信息,但由于从单用户负载下的数据与多用户负载下得到的数据是完全不同的,这导致分析器的数据并不精确。在开发阶段使用分析器来优化应用的性能是一个好的方式,但在高负载下的应用分析可以取到更好的效果。

在负载下分析服务器应用的性能需要一些基本的元素:

1、  可控的进行应用负载测试的环境。

2、  可控的人造负载使得应用满负荷运行。

3、  来自监视器、应用和负载测试工具自身的数据搜集。

4、  性能改变的跟踪。

不要低估最后一个需求(性能跟踪)的重要性因为如果不能跟踪性能你就不能实际的管理项目。性能上 10-20% 的改善对单用户环境来说并没有什么不同,但对支持人员来说就不一样了。20% 的改善是非常大的,而且通过跟踪性能的改善,你可以提供重要的反馈和持续跟踪。

虽然性能跟踪很重要,但有时为了使后续的测试更加精确而不得不抛弃先前的测试结果。在性能测试中,改善负载测试的精确性可能需要修改模拟环境,而这些变化是必须的,通过变化前后的负载测试你可以观察到其中的转变。

3 、 分析器原理

 

现在几乎所有的分析器都是从同一个起点和约束开始的: Java 虚拟机分析器界面 (JVMPI) ( 参考 "The Java Virtual Machine Profiler Interface") 。 Sun 微系统的 API 允许工具开发商接口或者连接到遵循 JVMPI 的 JVM 上,并且监控运作的方式以及 JVM 运行任何 Java 程序时的关键事件 -- 从单独的应用程序到 Applet 、 Servlet 和企业 JavaBeans (EJB) 组件。 

 

在分析器内启动一个程序意味着生成、捕捉、和观察大量数据,所以所有的分析器都包含着不同的方法来控制数据的流动,在不同的标准以及每一封装包的基础上进行过滤。同样 也可以使用灵活的正规表达式类型模式来完成。

4 、 JProfiler 简介

 是一个全功能的 Java 剖析工具( profiler ),专用于分析 J2SE 和 J2EE 应用程序。它把 CPU 、执行绪和内存的剖析组合在一个强大的 应用中。 JProfiler可提供许多 IDE 整合和应用服务器整合用途。 JProfiler 直觉式的 GUI 让你可以找到效能瓶颈、抓出内存漏失 (memory leaks) 、并解决执行绪的问题。它让你得以对 heap walker 作资源回收器的root analysis ,可以轻易找出内存溢出; heap 快照( snapshot )模式让未被参照( reference )的对象、稍微被参照的对象、或在终结( finalization )队列的对象 都会被移除;整合精灵以便剖析浏览器的 Java 外挂功能。

目前最新的版本是 4.1.2 ,几乎支持所有常用的 IDE 和 Application Server ,可以到其 EJ 官方网站 http://www.ej-technologies.com/ 下载,申请一个十天的试用注册码。

5 、 JProfiler 特征

5.1 内存剖析 Memory profiler

JProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。

 

  • 所有对象 
    显示类或在状况统计和尺码信息堆上所有对象的包。你可以标记当前值并显示差异值。

     

  • 记录对象 Record objects 
    显示类或所有已记录对象的包。你可以标记出当前值并且显示差异值。

     

  • 分配访问树 Allocation call tree 
    显示一棵请求树或者方法、类、包或对已选择类有带注释的分配信息的J2EE组件。

     

  • 分配热点 Allocation hot spots 
    显示一个列表,包括方法、类、包或分配已选类的J2EE组件。你可以标注当前值并且显示差异值。对于每个热点都可以显示它的跟踪记录树。

     

5.2 堆遍历 Heap walker

 

在JProfiler的堆遍历器(Heap walker)中,你可以对堆的状况进行快照并且可以通过选择步骤下寻找感兴趣的对象。堆遍历器有五个视图:

 

  • 类 Classes 
    显示所有类和它们的实例。

     

  • 分配 Allocations 
    为所有记录对象显示分配树和分配热点。

     

  • 索引 References 
    为单个对象和“显示到垃圾回收根目录的路径”提供索引图的显示功能。还能提供合并输入视图和输出视图的功能。

     

  • 数据 Data 
    为单个对象显示实例和类数据。

     

  • 时间 Time 
    显示一个对已记录对象的解决时间的柱状图。

     

5.3 CPU 剖析 CPU profiler

 

JProfiler 提供不同的方法来记录访问树以优化性能和细节。线程或者线程组以及线程状况可以被所有的视图选择。所有的视图都可以聚集到方法、类、包或J2EE组件等不同层上。CPU视图部分包括:

 

  • 访问树 Call tree 
    显示一个积累的自顶向下的树,树中包含所有在JVM中已记录的访问队列。JDBC,JMS和JNDI服务请求都被注释在请求树中。请求树可以根据Servlet和JSP对URL的不同需要进行拆分。

     

  • 热点 Hot spots 
    显示消耗时间最多的方法的列表。对每个热点都能够显示回溯树。该热点可以按照方法请求,JDBC,JMS和JNDI服务请求以及按照URL请求来进行计算。

     

  • 访问图 Call graph 
    显示一个从已选方法、类、包或J2EE组件开始的访问队列的图。

     

5.4 线程剖析 Thread profiler

 

对线程剖析,JProfiler提供以下视图:

 

  • 线程历史 Thread history 
    显示一个与线程活动和线程状态在一起的活动时间表。

     

  • 线程监控 Thread monitor 
    显示一个列表,包括所有的活动线程以及它们目前的活动状况。

     

  • 死锁探测图表 Deadlock Detection 
    显示一个包含了所有在JVM里的死锁图表。

     

  • 目前使用的监测器 Current monitor useage 
    显示目前使用的监测器并且包括它们的关联线程。

     

  • 历史检测记录 History usage history 
    显示重大的等待事件和阻塞事件的历史记录。

     

  • 监测使用状态 Monitor usage statistics 
    显示分组监测,线程和监测类的统计监测数据。

     

5.5 VM 遥感勘测技术 VM telemetry

 

观察JVM的内部状态,JProfiler提供了不同的遥感勘测视图,如下所示:

 

  • 堆 Heap 
    显示一个堆的使用状况和堆尺寸大小活动时间表。

     

  • 记录的对象 Recorded objects 
    显示一张关于活动对象与数组的图表的活动时间表。

     

  • 垃圾回收 Garbage collector 
    显示一张关于垃圾回收活动的活动时间表。

     

  • 类 Classes 
    显示一个与已装载类的图表的活动时间表。

     

  • 线程 Threads 
    显示一个与动态线程图表的活动时间表。

     

6 、 本地监控

系统环境 Windows OS ;软件 JBuilderX/2005 和 JProfiler 4.1.2

1 、安装 JBuilderX 和 JProfiler 4.1.2

2 、运行 JProfiler , Session-> IDE integration tab, IDE 选择Borland JBuilder7 to 2005,点击Integrate按钮,选择JBuilder的安装目录,确认,会看到已经将JProfiler以OpenTool的形式,成功整合到JBuilder中,见下图。

 

 

 


3
 、运行 JBuilder ,打开 Run->Configurations ,选择或新建一个 Runtime ,在 Optimize 选项中就可以看到 JProfiler ,可以选择每次运行程序新建一个 JProfiler 窗口的提示设置。

4 、点击 Optimize Project 按钮,运行程序。

jprofiler排查内存溢出问题 Jprofiler工具排查生产dump文件日志 阅读详情

相关推荐

使用JProfiler排查内存溢出(OOM)

一、下载JProfiler客户端 下载地址:https://www.ej-technologies.com/download/jprofiler/files 无脑下一步,选择IDEA即可,然后集成。 二、IDEA集成JProfiler插件 安装完成后如果IDEA的右上角有下图标志,即为安装成功,如果没有的话,可以重启IDEA尝试。 接下来进行绑定客户端,如下图: 笔者此处使用的是Mac版本,选择后缀为app的JProfiler即可,如果为windows的小伙伴应该是在需要选择bin目录下的JProfl

weixin_44248000的博客 2426

【JVM】通过JProfiler来分析内存泄漏(OOM)问题

昨天项目还很健康,今天就病了,肯定是别人下毒,这种说法是不对的。既然OOM已经发生了,那就查查是什么原因导致了这个问题。首先bug的定位,程序员第一时间肯定想到的查看报错日志,download日志之后,如果运气好,报错的地方刚好就是导致OOM的代码,那么恭喜你,请修复他。但是如果日志内的报错指向了很多的业务代码,甚至没有指向,那么日志就失去了作用,这时候,我们要首先去看看JVM分配的大小,之前分配的大小也许够之前用,但是增加了业务逻辑,或者遇到了高并发场景,内存的使用就上去了,以前申请的JVM内存大小可就不

weixin_42252805的博客 2370

【Jvm】性能调优(拓展)Jprofiler如何监控和解决死锁、内存泄露问题

Jprofilers是针对Java开发的性能分析工具可以对Java程序的内存,CPU,线程,GC,锁等进行监控和分析如果没有Jprofiler这类工具, 在生产环境发生内存泄漏, 去一行一行review所有代码是不现实的, 通过此工具我们可以在较短的时间内定位到导致内存泄漏出现的代码位置, 然后review该位置的代码即可.内存泄漏的难的主要是定位, 解决起来一般比较简单,重启生产环境应用,让服务恢复正常, 然后在把导致内存泄漏的代码优化(

墩墩分墩 2415

jprofiler 内存监控

java.lang.OutOfMemoryError 每每看到这个异常心都拔凉拔凉的,不用说了又是内存溢出了,现在问题是那里内存溢出呢?找到这个问题就好办了,但是说起来简单做起来难。上网找了一些内存监控器来监控内存,大费周折终于找到jprofiler软件了。下面介绍下jprofiler配置过程。 下载jprofiler_windows_5_1_4.zip文件,解压到D盘 找到\jprofil...

zx527291227的专栏 241

MINI PCIE接口设计要点:

3.3Vaux(5pins):3.3V电源。PERST#信号通过外接复位电路,可实现模块复位。模块可以通过硬件方式或软件方式关闭射频通信(不包括 GNSS)。LED_WWAN#:(O)漏极开漏,低有效。:(I)低激活系统禁止射频信号(飞行模式),因此需加上拉。UIM_PWR (1 pin):(O)UIM的电源输出。SMB_DATA:SMBus2.0数据信号线。UIM_VPP:(O)A类设备的可变电源电压。SMB_CLK:SMBus2.0时钟信号线。UIM_RESET:(O)UIM的复位信号。

qq_40010777的博客 8238

stm32cubeMX使用HAL库点亮LED流水灯

目录

weixin_46129506的博客 3794

jprofiler监控部署在tomcat下的内存过高问题

之前的一些老项目还是部署在tomcat容器下面,存在一些内存过高的问题,需要进行排查, 还是介绍使用jprofiler来做内存的监控 这一步如果没有,还是不用选择 如果多个tomcat,无法确定是那个,可以先查看自己服务的PID...

keyboard专栏 476

【音视频】PJSIP库——示例简介、C++类说明

aectest音频回声消除测试工具,用于演示音频处理模块中的回声消除(AEC)功能,通常用于 VoIP 场景中优化语音质量。auddemo音频播放 / 录制演示,展示如何使用 PJProject 的音频接口进行基本的音频数据采集、播放和处理,例如波形显示或格式转换。stereotest立体声处理测试,可能用于演示多声道音频的处理方式,如混音、声道分离等。tonegen音频信号生成工具,用于生成测试用的音频信号(如正弦波、音调等),常用于音频设备测试或调试。recfile。

郭老二 434

JProfiler监控案例--内存泄漏分析(1)

JProfiler监控案例–内存泄漏分析 通过具体例子要验证内存泄漏时,JProfiler监控上CPU、memory、GC等监控变化,以及怎么去分析查找内存泄漏原因。 下面的方法监控及验证,主要适合本地压测、本地代码功能性能验证。 1、模拟泄漏的代码 方法中for循环会一直执行,不停给list添加对象。 List<Integer> temp = new ArrayList<>(); for(int i=0;i>=0;i++){ temp.add(i);

寻梦友的博客 2652

22h2版本的win10安装Docker Desktop时页面空白

摘要:Windows10 22H2系统重装Docker时出现安装界面卡死问题,通过管理员CMD执行静默安装命令解决。命令指定了WSL-2后端及多个自定义数据存储路径(安装目录、Hyper-V数据、Windows容器数据、WSL数据),安装需等待几分钟。最终验证安装成功。

猿小白的博客 650

软件测试面试题之易错题

(1)白盒测试:又称功能功能 测试、数据驱动测试和行为测试,是一种从用户观点出发的测试,被测程序为黑盒子, 通过测试来检测每个功能是否能够正常使用。(2)黑盒测试:又称结构测试和逻辑驱动 测试,是知道产品内部工作过程,通过测试来检测产品内部动作是否按照规格说明书 的规定去正常运行。(1)、测试需求分析;(2)动态白盒测试:需要对各个模块功能、模块间的接口、局部数据结构、主要执行路径、 错误处理等方面的测试。(2) 集成测试所测试的对象是模块间的接口,其目的是在找出在模块接口上面,包括整体体系结构上的问题;

m0_37449634的博客 678

性能监控(二)-Jprofiler内存分析

1.界面介绍 后续更新。。。

有点想法的专栏 2779

适航文章汇总:知识体系全面梳理

无论您是行业新手还是经验丰富的专业人士,都可以通过本篇文章快速查找相关资料,提高对适航认证、机载系统、软件及硬件等领域的理解。本部分详细解析ARP 4754A、ARP 4761、DO-178C、DO-254等核心标准,并介绍其在机载系统开发中的应用。介绍FAA、EASA、CCAR等主要航空管理机构的适航规章体系,并说明各类飞行器(如固定翼、旋翼机、无人机等)的适航要求。本部分还探讨硬件设计、验证与确认过程中的挑战。从系统架构设计到机载设备的集成与管理,本部分介绍机载系统的研发体系及适航管理的最佳实践。

qq_41854911的博客 1448

JProfiler-记windows服务器上监控用Java启动的程序内存资源占用情况

最近数据采集项目部署在windows server 2016版本服务器上,突然有一次出现内存溢出的情况,很棘手,没有细研究过这类异常,经过一天多的分析,决定用第三方工具试一下。首先找deepseek问一下,嘿嘿,这么好的工具,不能浪费。我这里跳过原生的,决定使用第二款 JProfiler。

qq_40100267的博客 327

使用Qt编译Qt WebEngine

这就是使用Qt编译Qt WebEngine模块的基本步骤。通过按照上述步骤,您应该能够成功编译和使用Qt WebEngine来嵌入Web内容到您的Qt应用程序中。Qt WebEngine是Qt框架的一个模块,它提供了一个现代的Web浏览器引擎,可以在Qt应用程序中嵌入Web内容。首先,需要获取Qt的源代码。如果尚未安装,可以从Qt官方网站下载并安装Qt。完成Qt的安装后,您可以构建并运行Qt WebEngine示例来验证编译是否成功。这将把编译好的Qt库文件和头文件安装到之前指定的安装目录中。

DevForge的博客 3016

麒麟v10系统安装

麒麟v10系统安装

喜文BLOG 1万+

jprofiler监控linux内存分析,Jprofiler监控JVM性能

设置本地Jprofiler1)、新建一个session:Session -> Integration Wizard -> New Server integration.2)、选择部署服务的服务器,比如远程是Jetty7,则选择Jetty 7.x3)、选择本地或者远程服务器,如果要监控远程服务器,应当点选On a remote computer 并且选择相应的服务器系统版本。Linux获...

weixin_33589626的博客 581

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

JVM调试与监控:使用JVisualVM、JProfiler、JConsole进行性能监控、内存分析与线程调试

Java应用运行时,JVM负责管理内存、线程、垃圾回收等多个方面的工作。为了确保Java应用的稳定性与高性能,合理使用JVM的监控与调试工具至关重要。JVisualVM:JDK自带的图形化性能监控工具,用于监控JVM的内存、CPU使用情况、线程活动、垃圾回收等。JProfiler:一款功能强大的商业性能分析工具,提供详细的性能数据,包括内存分析、CPU分析、线程分析等。JConsole:JDK自带的监控工具,通过JMX协议对JVM进行监控,适用于实时监控应用的状态。

一碗黄焖鸡三碗米饭的博客 771

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

java内存监控工具JProfiler学习笔记

一、安装JProfiler        从http://www.ej-technologies.com/下载5.1.2并申请试用序列号   二、主要功能简介 1.内存剖析 Memory profiler JProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。

dinphi的专栏 1109

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jprofiler java应用内存监控、诊断分析

很有可能造成内存溢出,方法名找到后去看源代码,告诉开发哪里写的不合理,如果不懂代码也可以了,最起码找到哪个方法有问题了,如果怀疑哪个方法有问题,就把这个方法放到Class Tracker里进行单独观察,发现full gc也没有变化,单独把这个方法放到了内存快照。参照上面的实例数或百分比都可以看出来一直在增加,实例数是950000,上面的是690000,Difference也是111%,大于上面的53%,强制进行full gc,即点击。右键cn.test.TestBean,选择第一个。...

学亮编程手记 921

Jprofiler监控工具(内存泄漏)

内存泄漏 1、测试代码 Java代码 /** *JProfiler内存监控例子 * *@authoryhye *@2011-11-9上午09:46:06 */ publicclassJProfilerMemMain{ privateList<Integer...

weixin_33835690的博客 90

JProfiler实战指南(1)-- 深度解析内存与线程监控面板

本文是JProfiler实战指南的第一篇,深度解析了其核心的**内存**与**线程监控面板**。通过Live Memory面板,可精准定位内存泄漏元凶,分析对象分配与增长;借助Threads面板,能可视化线程状态与死锁,快速诊断阻塞问题。文章结合实战案例,指导开发者将模糊的性能感知转变为基于数据的精准优化。

ff678的博客 669

JAVA内存分析:idea集成jprofiler查看JVM内存使用情况

JAVA内存分析:idea集成jprofiler查看JVM内存使用情况 上一篇 JAVA内存分析:基于dump内存溢出快照分析 引言 在生产环境发现存在内存溢出的情况,想在本地的开发环境,将程序跑起来进行运行情况分析,那么我们可以采用idea+jprofiler集成的方式,进行内存分析。 操作步骤 idea 集成 jprofiler插件 本地安装 jprofiler.exe 下载地址 :jprofiler 运行本地程序 观察数据处理时,JVM中的变化 开始执行 1. idea 安装jprofiler

liaoyue11的博客 1万+
上一篇: 大数据处理系列之(一)Java线程池使用
下一篇: mybatis中的#和$的区别
andyLiuJava
博客等级 码龄14年 0粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值