Tpcc-MySQL对mysql数据库进行性能测试报告、分析及使用gnuplot生成图表展示

达梦数据库TPCC测试记录 TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统。 TPC-C测试的结果主要有两个指标,即流量指标(Throughput,简称tpmC)和性价比(Price/Performance,简称Price/tpmC)。 流量指标(Throughput,简称tpmC):按照TPC组织的定义,流量指标描述了系统在执行支付操作、订单状态查询、发货和库存状态查询这4种交易的同时,每分钟可以处理多少个新订单交易。所有交易的响应时间必须满足TPC 阅读详情

TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统。
tpcc-mysql是percona基于TPC-C(下面简写成TPCC)衍生出来的产品,专用于MySQL基准测试。其源码放在launchpad上,用bazaar管理,项目地址:https://code.launchpad.net/~percona-dev/perconatools/tpcc-mysql

服务器大概配置:

两颗6核12线程CPU,相当于12核24线程
64G内存
1T,SAS 15000转/分钟硬盘 
raid5阵列



一、 安装tpcc-mysql工具


安装方法一:
安装bzr客户端
# yum -y install bzr
http://imysql.com/wp-content/uploads/2014/09/tpcc-mysql-src.tgz

之后,就可以开始用bzr客户端下载tpcc-mysql源码了
bzr branch lp:~percona-dev/perconatools/tpcc-mysql

安装方法二:
通过下载源码编译安装(推荐)
MySQL中文网便捷下载地址:
http://imysql.com/wp-content/uploads/2014/09/tpcc-mysql-src.tgz
下载到本地后,先执行 gunzip 解压缩文件,再执行 tar xf 解包,直接 tar zxf 可能会报告异常。
# gunzip tpcc-mysql-src.tgz
# tar xf tpcc-mysql-src.tar
# cd tpcc-mysql/src
# make


# ls
add_fkey_idx.sql  count.sql  create_table.sql  drop_cons.sql  load.sh  README  schema2  scripts  src  tpcc_load  tpcc_start


如果 make 没有报错,就会在 /tmp/tpcc-mysql 下生成 tpcc 二进制命令行工具 tpcc_load 、 tpcc_start

tpcc-mysql的业务逻辑及其相关的几个表作用如下:

New-Order:新订单,一次完整的订单事务,几乎涉及到全部表
Payment:支付,主要对应 orders、history 表
Order-Status:订单状态,主要对应 orders、order_line 表
Delivery:发货,主要对应 order_line 表
Stock-Level:库存,主要对应 stock 表
其他相关表:
客户:主要对应 customer 表
地区:主要对应 district 表
商品:主要对应 item 表
仓库:主要对应 warehouse 表


二、TPCC测试前准备


初始化测试库环境
make命令会在tpcc-mysql目录下生成 tpcc 命令行工具 tpcc_load ,tpcc_start
tpcc_load  提供初始化数据的功能
tpcc_start 进行压力测试

# cd /root/tpcc-mysql
# mysqladmin -uroot -pyourpassword create tpcc1000 # 创建测试用的数据库
# mysql -uroot -pyourpassword  -f tpcc1000 < create_table.sql# 创建测试用的表
# mysql -uroot -pyourpassword tpcc1000 < add_fkey_idx.sql# 创建FK和索引

初始化完毕后,就可以开始加载测试数据了
tpcc_load使用介绍:
# ./tpcc_load --help
tpcc_load [server] [DB] [user] [pass] [warehouse]
Server: 服务器名
DB: 数据库名
user: 用户名
pass: 密码
Warehouse: 仓库的数量

tpcc_start使用介绍:
#./tpcc_start --help
tpcc_start -h server_host -P port -d database_name -u mysql_user -p mysql_password -w warehouses -c connections -r warmup_time -l running_time -i report_interval -f report_file
介绍一下各个参数的用法
-h server_host: 服务器名
-P port : 端口号,默认为3306
-d database_name: 数据库名
-u mysql_user : 用户名
-p mysql_password : 密码
-w warehouses: 仓库的数量
-c connections : 线程数,默认为1
-r warmup_time : 热身时间,单位:s,默认为10s ,热身是为了将数据加载到内存。
-l running_time: 测试时间,单位:s,默认为20s
-i report_interval: 指定生成报告间隔时长
-f report_file: 测试结果输出文件




选项 warehouse 意为指定测试库下的仓库数量
真实测试场景中,仓库数一般不建议少于100个,视服务器硬件配置而定,如果是配备了SSD或者PCIE SSD这种高IOPS设备的话,建议最少不低于1000个。

执行下面的命令,开始灌入测试数据:

# cd /root/tpcc-mysql


创建150个数据仓库
# ./tpcc_load localhost tpcc1000 root "yourpass" 150

报错
./tpcc_load: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory


解决办法:
# echo "/usr/local/mysql/lib" >>/etc/ld.so.conf
# ldconfig
在这里,需要注意的是 tpcc 默认会读取 /var/lib/mysql/mysql.sock 这个socket 文件。
因此,如果你的 socket 文件不在相应路径的话,可以做个软连接,或者通过TCP/IP的方式连接测试服务器,例如:


cd /root/tpcc-mysql
./tpcc_load 1.2.3.4:3306 tpcc1000 tpcc_user "tpcc_password" 10
加载测试数据时长视仓库数量而定,若过程比较久需要稍加耐心等待。

三、进行测试


# ./tpcc_start -hlocalhost -d tpcc1000 -u root -p "yourpassword" -w 150 -c 24 -r 600 -l 7200 - >tpcc-output-log

报错:

neword 0:4
1062, 23000, Duplicate entry '4-3-3020' for key 'PRIMARY'


原来是因为我们改了默认的引擎为MyiSam并且关闭了innodb引擎引起的(生产环境大部分都是myisam的场景,设置了myisam为mysql5.5的默认引擎,而myisam不支持外键所以脚本在创建数据条目的时候不会理会是否主键唯一,这样会造成部分数据主键重复)

default-storage-engine=MyISAM
skip-innodb



即:模拟 150个仓库规模,并发 24个线程进行测试,热身时间为 300秒, 压测时间为 2小时。

真实测试场景中,建议预热时间不小于5分钟,持续压测时长不小于30分钟,否则测试数据可能不具参考意义。

测试结果输出如下(tpcc-output-log文件):

-- 本轮tpcc压测的一些基本信息
***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
option h with value 'localhost'         -- 主机
option d with value 'tpcc1000'          -- 数据库
option u with value 'root'              -- 账号
option p with value 'yourpassword'      -- 密码
option w with value '150'               -- 仓库数
option c with value '12'                -- 并发线程数
option r with value '300'               -- 数据预热时长(秒)
option l with value '3600'              -- 压测时长(秒)
non-option ARGV-elements: - 
<Parameters>
     [server]: localhost
     [port]: 3306
     [DBname]: tpcc1000
       [user]: root
       [pass]: yourpassword
  [warehouse]: 150
 [connection]: 12
     [rampup]: 300 (sec.)
    [measure]: 3600 (sec.)


-- 预热结束,开始进行压测
RAMP-UP TIME.(300 sec.)


-- 每10秒钟输出一次压测数据
MEASURING START.


  10, 435(0):3.322|6.846, 435(0):0.672|1.661, 44(0):0.386|0.439, 43(0):4.017|4.847, 44(0):11.076|11.907
  20, 418(0):3.334|3.482, 416(0):0.669|0.728, 41(0):0.355|0.390, 41(0):3.796|4.356, 41(0):10.580|10.781
  30, 410(0):3.332|4.708, 412(0):0.656|1.661, 41(0):0.304|0.308, 42(0):3.844|3.926, 42(0):10.542|10.646
...
  3580, 445(0):3.277|3.402, 447(0):0.658|0.765, 44(0):0.326|0.404, 45(0):3.856|3.950, 44(0):10.805|10.899
  3590, 388(0):3.352|3.589, 391(0):0.697|0.795, 39(0):0.320|0.330, 39(0):3.826|4.009, 39(0):10.638|10.844
  3600, 407(0):3.256|3.390, 405(0):0.676|0.746, 41(0):0.331|0.339, 41(0):3.904|3.910, 41(0):10.625|10.653
 -- 以逗号分隔,共6列
-- 第一列,第N次10秒
-- 第二列,新订单成功执行压测的次数(推迟执行压测的次数):90%事务的响应时间|本轮测试最大响应时间,新订单事务数也被认为是总有效事务数的指标
-- 第三列,支付业务成功执行次数(推迟执行次数):90%事务的响应时间|本轮测试最大响应时间
-- 第四列,订单状态业务的结果,后面几个的意义同上
-- 第五列,物流发货业务的结果,后面几个的意义同上
-- 第六列,库存仓储业务的结果,后面几个的意义同上


-- 压测结束
STOPPING THREADS............


-- 第一次结果统计
<Raw Results>
  [0] sc:144136  lt:5  rt:0  fl:0   -- New-Order,新订单业务成功(success,简写sc)次数,延迟(late,简写lt)次数,重试(retry,简写rt)次数,失败(failure,简写fl)次数
  [1] sc:144148  lt:0  rt:0  fl:0   -- Payment,支付业务统计,其他同上
  [2] sc:14416  lt:0  rt:0  fl:0    -- Order-Status,订单状态业务统计,其他同上
  [3] sc:14416  lt:0  rt:0  fl:0    -- Delivery,发货业务统计,其他同上
  [4] sc:14416  lt:0  rt:0  fl:0    -- Stock-Level,库存业务统计,其他同上
 in 3600 sec.


-- 第二次统计结果,其他同上
<Raw Results2(sum ver.)>
  [0] sc:144147  lt:5  rt:0  fl:0 
  [1] sc:144154  lt:0  rt:0  fl:0 
  [2] sc:14416  lt:0  rt:0  fl:0 
  [3] sc:14416  lt:0  rt:0  fl:0 
  [4] sc:14416  lt:0  rt:0  fl:0 


<Constraint Check> (all must be [OK])   -- 下面所有业务逻辑结果都必须为 OK 才行
 [transaction percentage]
        Payment: 43.48% (>=43.0%) [OK]  -- 支付成功次数(上述统计结果中 sc + lt)必须大于43.0%,否则结果为NG,而不是OK
   Order-Status: 4.35% (>= 4.0%) [OK]   -- 订单状态,其他同上
       Delivery: 4.35% (>= 4.0%) [OK]   -- 发货,其他同上
    Stock-Level: 4.35% (>= 4.0%) [OK]   -- 库存,其他同上
 [response time (at least 90% passed)]  -- 响应耗时指标必须超过90%通过才行
      New-Order: 100.00%  [OK]          -- 下面几个响应耗时指标全部 100% 通过
        Payment: 100.00%  [OK]
   Order-Status: 100.00%  [OK]
       Delivery: 100.00%  [OK]
    Stock-Level: 100.00%  [OK]


<TpmC>
                 2402.350 TpmC - TpmC结果值(每分钟事务数,该值是第一次统计结果中的新订单事务数除以总耗时分钟数,例如本例中是:144136/60 = 2402.350)




四、生成图表

首先写一个脚本获取数据源:

# vim tpcc-output-analyze.sh
#!/bin/sh
TIMESLOT=1
if [ -n "$2" ]
then
TIMESLOT=$2
fi
cat $1 | grep -v HY000 | grep -v payment | grep -v neword | awk -v timeslot=$TIMESLOT 'BEGIN { FS="[,():]"; s=0; cntr=0; aggr=0 } /MEASURING START/ { s=1} /STOPPING THREADS/ {s=0} /0/ { if (s==1) { cntr++; aggr+=$2; } if ( cntr==timeslot ) { printf ("%d %3d\n",$1,(aggr/timeslot)) ; cntr=0; aggr=0 } }'
这个脚本就是对 tpcc-output-log 的第一列与第二列进行运算。


# chmod +x tpcc-output-analyze.sh 
#./tpcc-output-analyze.sh tpcc-output-log > tpcc-graphic-data.txt
绘图过程:


#vim log.conf
set terminal gif small size 480,360 #指定输出成gif图片,且图片大小为550×25
set output "tcpp.gif" #指定输出gif图片的文件名
set title "MySQL Performance" #图片标题
set style data lines #显示网格
set xlabel "Time/s" #X轴标题
set ylabel "Data" #Y轴标题
set grid #显示网格
plot \
"tpcc-graphic-data.txt" using 1:2 title "Total throughput" with lines #从tpcc-graphic-data.txt文件中读取第一列和第二列作为X轴和Y轴数据,示例名"Total throughput"


安装绘图工具gnuplot
# yum install -y gnuplot
运行生成tcpp.gif:
# cat log.conf | gnuplot


可以看到在/root/tpcc-mysql目录下已经生成了tcpp.gif图片文件


使用MySQL进行TPC-C测试并使用Gnuplot生成图表 TPC-C测试是一种常用的数据库性能测试基准,用于评估数据库系统在处理复杂事务负载时的性能。MySQL是一种常见的关系型数据库管理系统,而Gnuplot是一个强大的绘图工具,可以用来生成各种类型的图表。在本文中,我们将探讨如何使用MySQL进行TPC-C测试,并使用Gnuplot生成相应的图表。通过以上步骤,我们可以使用MySQL进行TPC-C测试,并使用Gnuplot生成相应的图表来可视化测试结果。在完成TPC-C测试后,我们可以使用Gnuplot生成图表来可视化测试结果。 阅读详情

相关推荐

八股已死、场景当立(Docker篇)

本文总结了Docker相关的面试八股文,重点介绍了Docker在Java开发中的应用。主要内容包括:Docker容器与虚拟机的区别及其对Java应用性能的影响;如何为Java应用构建优化镜像;Docker常用命令在Java容器管理中的使用;Docker网络模式与数据卷在Java微服务中的配置;使用Docker Compose部署Java+MySQL微服务的方法;以及为Java应用配置健康检查的重要性。文章还通过具体示例说明了Nginx容器挂载、日志收集等常见场景的实现方式,为Java开发者提供了实用的Doc

qq_55253420的博客 711

mysql tpcc 测试结果分析_tpcc-mysql运行结果解读

前言首先我们需要知道tpcc-mysql是干什么的。TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统。tpcc-mysql是percona基于TPC-C(下面简写成TPCC)衍生出来的产品,专用于MySQL基准测试。Tpcc工具结构create_table.sql:创建所需的数据库表,共9个表add_fkey_idx.sql:创建索引和外键dr...

weixin_39890452的博客 1277

IsaacLab从入门到精通(二) 导入自定义机器人

IsaacLab系列第二讲,导入自定义的机器人及设置

DejaWu33的博客 8459

Tpcc-mysql 结果解读

1. 填坑经验   不要使用tidb的tpcc测试程序(非标准,tidb修改过),使用: https://github.com/Percona-Lab/tpcc-mysql   2. tpcc介绍 TPC-C 模拟了一个比较有代表意义的 OLTP 应用环境:在线订单处理系统。假设有一个大型商品批发商,拥有 N 个位于不同区域的仓库,每个仓库负责为 10 个销售点供货,每个销售点有 30...

frockee的专栏 3392

本地AI代码助手:智能解析大型代码库,实现自动化重构与理解

在软件开发中,大型代码库的理解与维护是常见挑战。传统方法依赖人工阅读和有限上下文工具,效率低下。通过结合检索增强生成(RAG)和多智能体(Multi-Agent)架构,现代AI工具能够智能解析代码结构,理解模块关系,并精准定位相关代码片段。这种技术不仅能提升代码探索效率,还能自动化执行重构、文档生成等任务,在遗留系统维护、快速上手新项目等场景中发挥关键作用。本文以blackboxaicode/cli为例,展示了如何利用其代码感知和Workflow Automation能力,高效处理复杂代码库。

weixin_30240349的博客 350

第十二段:基于env的重用

现代芯片的验证通常分为两个层次, 一是模块级别( block level, 也称为IP级别、 unit级别) 验证, 二是芯片级别( 也称为SOC级别) 验证。 一个大的芯片在开发时, 是分成多个小的模块来开发的。 每个模块开发一套独立的验证环境, 通常每个模块有 一个专门的验证人员负责。 当在模块级别验证完成后, 需要做整个系统的验证。 假设某个系统分成了三个模块,如下图: 这三个模块在模块级别验证时, 分别有自己的driver和s...

年糕的博客 418

TPCC测试和HTML报告

benchmarksql 除了提供文字版输出, 还有 通过工具生成 html版本的报告 ,不过需要安装R语言和python2和提前配置。这时发现,原来的bm5没有结果目录生成。​ 正常10万,加强50万。

m0_46426259的博客 1335

微调实操一: 增量预训练(Pretraining)

《微调入门篇:大模型微调的理论学习》我们对大模型微调理论有了基本了解,这篇结合我们现实中常见的场景,进行大模型微调实操部分的了解和学习,之前我有写过类似的文章《实践篇:大模型微调增量预训练实践(二)》利用的MedicalGPT的源码在colab进行操作, 由于MedicalGPT代码比较难以理解,而且模型只能从hugging face上下载,对于一些国内服务器无法访问,我重构了代码,让训练代码更有可读性,并参考LLAMAFactory的项目,增加了modelscope上下载模型,轻松在国内服务器运行.

youbingchen的博客 6987

【工具】TPCC-MySQL 测试结果详解

TPCC-MySQL输出结果详解前面的一篇文章介绍了测试工具tpcc-mysql的安装与使用,奈何网上基本没有对于tpcc-mysql 结果的分析,本文介绍如何对测试结果进行分析:一 测试例子[root@rac1 tp...

cojm55771的博客 361

YOLOv8集成CPCA(Combined Parallel Convolutional Attention)注意力机制模块YOLOv8深度教程

YOLOv8集成CPCA注意力模块教程摘要 本教程详细介绍了如何将YOLOv8 CPCA(Combined Parallel Convolutional Attention)注意力模块集成到YOLOv8目标检测框架中。CPCA模块结合了通道注意力和多尺度空间注意力机制,通过全局池化和双路径融合增强通道特征,并利用多尺度深度可分离卷积捕获空间上下文信息。YOLOv8 教程包含完整的实现步骤:创建CPCA模块代码、修改YOLOv8模型解析逻辑、编写自定义配置文件,YOLOv8YOLOv8YOLOv8YOLOv8

FJN110的博客 1615

第四章节 Qt字符串QString详解

QString 的使用方式和 C++标准库的 std::string 字符串的非常相似。

m0_65635427的博客 887

gnuplot读取mysql数据库_Tpcc-MySQL对mysql数据库进行性能测试报告、分析及使用gnuplot生成图表展示...

TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统。tpcc-mysql是percona基于TPC-C(下面简写成TPCC)衍生出来的产品,专用于MySQL基准测试。其源码放在launchpad上,用bazaar管理,项目地址:https://code.launchpad.net/~percona-dev/perconatools/tpcc-my...

weixin_35531726的博客 284

【首发独家】华为OD机试 - 服务中心选址、服务中心的最佳位置(C 语言解题)

最近更新的博客 华为 od 2023 | 什么是华为 od,od 薪资待遇,od 机试题清单 华为 OD 机试真题大全,用 Python 解华为机试题 | 机试宝典 【华为 OD 机试】全流程解析+经验分享,题型分享,防作弊指南 华为 od 机试,独家整理 已参加机试人员的实战技巧 本篇华为 OD 机试题解:服务中心选址、服务中心的最佳位置

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 1万+

MLoRA:多任务低秩适配与动态路由实战

低秩适配(LoRA)作为大模型高效微调的典型技术,通过冻结基座权重并引入少量增量参数,显著降低了训练成本。然而在多任务、多语言或动态业务场景下,传统独立LoRA方案面临存储膨胀、切换频繁和任务间干扰等问题。MLoRA(Multi-LoRA)在LoRA基础上引入共享低秩基底与任务专属增量,并利用软路由机制动态组合参数,使同一基座模型能高效服务多任务,同时显著降低显存与存储开销。本文从原理出发,结合工程实践,详细拆解MLoRA的架构设计、训练策略与推理部署,并给出实测对比与常见问题排查,帮助开发者在多任务微调与

weixin_34267123的博客 335

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

mysql 压测结果_使用gnuplot对tpcc-mysql压测结果生成图表

前提,已经按照好gnuplot并支持jpeg【直接yum安装即可:yum install gnuplot】1、使用tpcc-mysql压测数据库,得到压测结果文件[root@localhost tpcc-mysql]# ./tpcc_start -h127.0.0.1 -P3306 -d sampson -u root -p mysql -w 1 -c 10 -r 60 -l 60 > tp...

weixin_31655833的博客 392

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

linux下tpcc测试mysql_Tpcc-MySQL测试并使用gnuplot生成图表

TPC(TracsactionProcessingPerformanceCouncil)事务处理性能协会是一个评价大型数据库系统软硬件性能的非盈利的组织,TPC-C是TPC协会制定的,用来测试典型的复杂OLTP系统的性能。Tpcc-mysql是percona基于tpcc衍生出来的产品,专用于mysql基准测试,其源码放在bazaar上,因此需要先安装bazaar客户端。项目地址:一下载工...

weixin_31190099的博客 294

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

gnuplot读取mysql数据库_Tpcc-MySQL测试并使用Gnuplot生成图表

TPC(Tracsaction Processing Performance Council) 事务处理性能协会是一个评价大型数据库系统软硬件性能的非盈利的组织,TPC-C是TPC(Tracsaction Processing Performance Council) 事务处理性能协会是一个评价大型数据库系统软硬件性能的非盈利的组织,TPC-C是TPC协会制定的,用来测试典型的复杂OLTP系统的性...

weixin_39942335的博客 131

gnuplot读取mysql数据库_Tpcc-MySQL测试并使用gnuplot生成图表

初始化表结构点击(此处)折叠或打开# 创建测试数据库, tpcc1000(随意)mysql -uroot -ppwd -e 'create database tpcc1000;'# 创建测试帐号:用户名,密码都是tpccmysql -uroot -ppwd -e "GRANT ALL ON tpcc1000.* TO 'tpcc'@'127.0.0.1' identified by 'tpcc';...

weixin_39818550的博客 187

Tpcc-MySQL测试并使用gnuplot生成图表

初始化表结构 点击(此处)折叠或打开 # 创建测试数据库, tpcc1000(随意) mysql -uroot -ppwd -e 'create database tpcc1000;' # 创建测试帐号:用户名,密码都是tpcc mysql -uroot -ppwd -e "GRANT ALL ON tpcc1000.* TO 'tpcc'@'127.0.0.1' identified by 't

摘取天上星 1511

使用gnuplot对tpcc-mysql压测结果生成图表

tpcc-mysql的安装:http://www.cnblogs.com/lizhi221/p/6814003.html tpcc-mysql的使用:http://www.cnblogs.com/lizhi221/p/6814014.html 前提,已经按照好gnuplot并支持jpeg【直接yum安装即可:yum install gnuplot】 1、使用tpcc-mysql压...

weixin_30737433的博客 235

实战 TPCC-MySQL 基准测试

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33895475的博客 112
上一篇: 通达OA在centos系统中快速部署文档(web和数据库)
下一篇: Tpcc-MySQL对mysql数据库进行性能测试报告、分析及使用gnuplot生成图表展示
reblue520
博客等级 码龄17年 443粉丝 1176原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值