Nginx+Tomcat负载均衡、动静分离集群

Nginx+Tomcat 负载均衡、动静分离集群 当使用Nginx服务器作为前端时,可以配置Nginx来进行静态页面的处理,而将动态页面请求转发给后端的Tomcat服务器来处理。由于Tomcat是轻量级应用服务器,可能无法满足所有访问量,因此需要多台Tomcat服务器,并通过Nginx的配置权重来进行负载均衡,以确保请求能够被分发到不同的Tomcat服务器上。本章详细介绍nginx+tomcat群集部署方法。 阅读详情

一、Nginx实现负载均衡原理

  • Nginx实现负载均衡是通过反向代理实现
  • Nginx服务器作为前端,Tomcat服务器作为后端,web页面请求由Nginx服务来进行转发。
    但是不是把所有的web请求转发,而是将静态页面请求Ncinx服务器自己来处理,动态页面请求,转发给后端的Tomcat服务器来处理。
  • 据我们所知,Tomcat是属于轻量级的应用服务器,可接受访问量可能会不足,所以我们需要多台Tromcat服务器,然后通过Nginx配置权重来进行挑选Tomcat服务器去进行处理,负载均衡的一种策略。

二、Nginx 配置反向代理的主要参数

  • 1、upstream 服务池名 {}
    作用:配置后端服务器池,以提供响应数据
  • 2、proxy_pass http:// 服务池名
    作用:配置将访问请求转发给后端服务器池的服务器处理

三、Nginx 动静分离实现原理和优势

1、Nginx 静态处理优势

  • Nginx 处理静态页面的效率远高于 Tomcat 的处理能力
  • 若 Tomcat 的请求量为1000次,则 Nginx 的请求量为6000次
  • Tomcat 每秒的吞吐量为0.6M,Nginx 的每秒吞吐量为3.6M
  • Nginx 处理静态资源的能力是 Tomcat 处理的6倍

2、动静分离原理

  • 服务端接收来自客户端的请求中,既有静态资源也有动态资源,静态资源由 Nginx 提供服务,动态资源由 Nginx 转发至后端。

四、Nginx + Tomcat 动静分离、负载均衡配置步骤

在这里插入图片描述

1、环境搭建

主机操作系统IP地址所需软件
NginxCentOS7192.168.172.10nginx-1.12.0.tar.gz
Tomcat1CentOS7192.168.172.20apache-tomcat-9.0.16.tar.gz
jdk-8u201-linux-x64.rpm
Tomcat2CentOS7192.168.172.30apache-tomcat-9.0.16.tar.gz
jdk-8u201-linux-x64.rpm

2、部署 Nginx 负载均衡服务器

#!/bin/bash
#脚本说明:编译安装nginx服务
#注意:使用前请将nginx-1.12.0.tar.gz放入/opt目录下

#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0

#安装所需开发包和编译环境、编译器
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make

#创建程序用户,便于准确控制访问
useradd -M -s /sbin/nologin nginx

#解压安装包
cd /opt
tar zxvf nginx-1.12.0.tar.gz -C /opt/

#编译安装nginx;指定安装路径、指定用户名、组名、启用模块以支持统计状态
cd /opt/nginx-1.12.0/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-file-aio --with-http_gzip_static_module --with-http_flv_module --with-http_ssl_module

make && make install

#软链接便于系统识别nginx操作命令
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

#添加nginx系统服务
echo '[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecrReload=/bin/kill -s HUP $MAINPID
ExecrStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target' > /lib/systemd/system/nginx.service

#赋权及开启服务、开启开机自启
chmod 754 /lib/systemd/system/nginx.service
systemctl restart nginx.service
systemctl enable nginx.service

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、部署两台 Tomcat 应用服务器

#!/bin/bash
#安装Tomcat服务

#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0

#安装JDK
cd /opt
rpm -ivh jdk-8u201-linux-x64.rpm

#设置JDK环境变量
echo 'export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH' > /etc/profile.d/java.sh

source /etc/profile

#安装并启动Tomcat
cd /opt
tar zxvf apache-tomcat-9.0.16.tar.gz
mv apache-tomcat-9.0.16 /usr/local/tomcat
/usr/local/tomcat/bin/startup.sh

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、配置动静分离

Tomcat1配置

mkdir /usr/local/tomcat/webapps/test

vim /usr/local/tomcat/webapps/test/index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test1 page</title>
</head>
<body>
<% out.println("动态页面1");%>
</body>
</html>

#修改配置文件
vim /usr/local/tomcat/conf/server.xml
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true" />
</Host>

/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

Tomcat2配置

mkdir /usr/local/tomcat/webapps/test

vim /usr/local/tomcat/webapps/test/index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test2 page</title>
</head>
<body>
<% out.println("动态页面2");%>
</body>
</html>

#修改配置文件
vim /usr/local/tomcat/conf/server.xml
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true" />
</Host>

/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Nginx配置

#准备静态页面和静态图片
echo '<html><body><h1>this is static</h1></body></html>' > /usr/local/nginx/html/index.html
vim /usr/local/nginx/conf/nginx.conf
......
http {
......
#gzip on;

upstream tomcat_server {
    server 192.168.172.20:8080 weight=1;
    server 192.168.172.30:8080 weight=1;
}

server {
	listen 80;
	server_name localhost;
	location ~ .*\.jsp$ {
	 #配置Nginx处理动态页面请求,将 .jsp 文件请求转发到Tomcat 服务器处理
		proxy_pass http://tomcat_server;
    #charset koi8-r;

	#access_log logs/host.access.log main;

systemctl restart nginx.service

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

5、访问测试

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Nginx+Tomcat 负载均衡(动静分离)集群 文章目录一、集群概述二、Nginx三、配置步骤1.环境2.部署 Nginx 负载均衡器3.部署 2 台 Tomcat 应用服务器4.动静分离配置5.配置 Nginx Server 一、集群概述 通常情况下,一个 Tomcat 站点由于可能出现单点故障及无法应付过多客户复杂多样的请求等情况,不能单独应用于生产环境下,所以我们需要一套更可靠的解决方案 Nginx 是一款非常优秀的 http 服务器软件,它能够支持高达 5000 个并发连接数的响应,拥有强大的静态资源处理能力,运行稳定,并且内存、CPU 等系 阅读详情

相关推荐

案例:Nginx + Tomcat集群(负载均衡 动静分离)

讲解了本次案例的详细操作步骤,实现Nginx作为代理服务器,tomcat作为后端服务器的负载均衡和动静分离Web服务器集群

变成我...... 1812

Nginx概述

Nginx 一、Nginx概述 Nginx(“engine x”)是一个开源的,支持高性能、高并发的web服务和代理服务软件。它由俄罗斯人Igor Sysoev开发的,最初应用于俄罗斯的大型网站www.rambler.ru上。后来作者将源代码以类似BSD许可证的形式开源出来供全球使用。 Nginx因具有高并发(特别是静态资源)、占用系统资源少等特性,且功能丰富而逐渐流行起来。在功能应用方面,Nginx不但是一个优秀的Web服务软件,还具有反向代理、负载均衡功能和缓存服务功能。在反向代理负载均衡功能方面,它类

YY_XDX的博客 562

Nginx+Tomcat负载均衡动静分离集群

Tomcat多实例 安装好 jdk 在部署 Tomcat 之前必须安装好 jdk,因为 jdk 是 Tomcat 运行的必要环境 1. #关闭防火墙 systemctl disable --now firewalld.service setenforce 0 2. #将安装 Tomcat 所需软件包传到/opt目录下 apache-tomcat-9.0.16.tar.gz jdk-8u201-linux-x64.rpm 3. #切换至/opt下,安装JDK cd /opt rpm -ivh...

sukapulai的博客 947

Nginx 性能、压测

目录一、概述二、优化2.1 配置 CPU2.2 配置http模块2.3 优化Linux 系统压测 一、概述 每秒请求数 Nginx 服务器性能 50000 – 60000 次/秒 优化 100000 次/秒 二、优化 2.1 配置 CPU 6核心配置 worker_processes 6; worker_cpu_affinity 0001 0010 0100 1000 1001 10010; 8核心配置 worker_processes 8; worker_cpu_affinit

问道至简 6960

Nginx 反向代理与负载均衡实战:Tomcat 集群与动静分离

通过 Nginx 反向代理和负载均衡,我们构建了一个高可用、高性能的 Web 应用架构:- ✅ **高可用性**:多台 Tomcat 实例,单点故障不影响整体服务- ✅ **高性能**:动静分离,静态资源由 Nginx 直接处理- ✅ **可扩展性**:轻松添加新的 Tomcat 实例- ✅ **安全性**:统一的入口,集中安全配置- ✅ **易维护**:统一的日志和监控这种架构不仅提升了应用的性能和可用性,还为后续的微服务化、容器化部署奠定了坚实基础。

Zsr1023的博客 1401

NGINX+Tomcat负载均衡、动静分离集群

Tomcat 是 Java 语言开发的,Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,是 Apache 软件基金会的 Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而成。Tomcat 属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。

m0_71888825的博客 1547

nginx简介及优点总结

简介:nginx是web服务器,由C语言开发,基于事件驱动能处理百万级别的tcp连接,高度模块化的设计和自由的许可证使得扩展其功能的模块层出不穷, 跨平台,可使用当前操作系统特有的一些高效API来提高自己的性能,nginx以性能为王。 选择nginx的核心理由是处理高并发请求的同时保持高效的服务。 优点 1. 更快 单次请求更快,高峰期也更快 2. 高扩展性 极具扩展性,...

weixin_30508309的博客 380

在Redroid容器中构建Frida RPC服务:自动化生成淘宝X-Sign签名参数

本文详细介绍了在Redroid容器中构建Frida RPC服务,实现自动化生成淘宝X-Sign等签名参数的完整方案。通过逆向分析定位关键方法,定制Redroid系统使Frida-Server常驻运行,并编写Frida脚本将签名方法暴露为RPC接口,最终封装为可远程调用的微服务,解决了签名生成的可移植性与工程化难题。

ice55的博客 643

nginx基础信息介绍

常用知识点 吞吐量(TPS):系统在单位时间内处理请求的数量。 QPS:每秒查询率 并发数:系统可以同时承载的正常使用系统功能的用户的数量。 RPS:每秒能处理的请求数目 响应时间(RT):系统对请求作出响应的时间。 nginx常用的应用场景 静态资源网站服务 反向代理服务 缓存加速 负载均衡 api服务 nginx与Apache Apache:低效,一般一个进程同一时间只会处理一个连接一个请求。处理完此请求才会处理下一个 nginx:一般可以处理上万,上班百万,甚至上千万的的并发连接 ngi

CodingAnHour 507

【v4l2】在Android SDK中交叉编译v4l2-ctl

为调试Android设备中camera的相关功能,需要引入v4l2-ctl工具。由于厂商提供的Android SDK源码中未集成v4l2-utils(包含v4l2-ctl以及其它组件的工具包),故需要下载v4l2-utils源码,并在Android SDK中交叉编译生成v4l2-ctl可执行文件。本文讲述其过程步骤。

rentong123的博客 1322

软考中级信息系统监理师(第二版)-第21章基础设施工程监理

由于网络信息技术的飞速发展,变化日新月异,网络设计不但要保证目前网络传输容量的要求,也要考虑今后网络的发展,满足当前以及今后相当一段时间内的网络需求,便于向新技术的升级和衔接,同时又需要保护原有的投资。通用布缆系统工程中,承建单位的竣工文档主要包括以下内容:承建合同,招标文件,投标文件,设计方案,工程实施组织设计方案,工程施工报告,隐蔽工程记录,变更记录,自测报告,信息点分布图(表),园区、楼宇、水平配线表,楼层平面图及无线设备点位图,无线设备信息表,竣工图纸等。多排安装时,列间距不应小于1200mm。

2301_78583973的博客 1400

NGINX应用性能优化指南(第五部分):吞吐量

【编者的话】本文是“NGINX应用性能优化指南”系列文章的第五篇,主要介绍了如何从吞吐量方面实现NGINX应用性能优化。\注:本文最初发布于MaxCDN博客,InfoQ中文站在获得作者授权的基础上对文章进行了翻译。\正文\NGINX反向代理配置设置了两个网络路径:客户端到代理和代理到服务器。这两个路径不仅“HTTP跨度(HTTP spans)”不同,TCP网络传输域也不同。\\尤其是提供大资源时,...

cpongo5 1577

基于Simulink的H∞鲁棒控制器设计与仿真建模示例

本文介绍了基于Simulink的H∞鲁棒控制器设计与仿真方法。针对质量-弹簧-阻尼系统存在±50%刚度不确定性的问题,详细阐述了从构建广义被控对象、设计性能加权函数,到使用hinfsyn综合控制器的完整流程。通过Simulink仿真验证,所设计的H∞控制器在参数摄动和外部扰动下均保持良好性能,位移控制误差小于2%,扰动衰减超过20dB。相比传统PID控制,H∞方法展现出显著鲁棒性优势。文章还总结了工程实践中的加权函数调参技巧、控制器降阶方法,并展望了μ-综合等扩展方向,为处理系统不确定性提供了实用解决方案。

amy_mhd的博客 69

Nginx+Tomcat实现负载均衡、动静分离集群部署(图文详解)

文章目录一、Nginx实现负载均衡原理1、Nginx静态处理优势2、Nginx动静分离原理二、Nginx配置反向代理主要参数三、实验(图文详解)环境配置1.部署Nginx 负载均衡器2.部署2台Tomcat 应用服务器3.动静分离配置Tomcat Server1 配置Tomcat Server2 配置Nginx server 配置4.测试效果 一、Nginx实现负载均衡原理 Nginx实现负载均衡是通过反向代理实现 如图所示: Nginx服务器作为前端,Tomcat服务器作为后端,web页面请求由Ngin

愿你成为自己喜欢的模样,不抱怨,不将就,有自由,有光芒! 8128

AI测试实战:手把手教你做LLM(大模型)性能测试「含完整代码」

大模型API性能测试是评估模型服务响应能力、吞吐量和资源效率的关键手段。核心指标包括总响应时间、吐字率、首token延迟、输入/输出tokens数量、QPM等。测试流程涵盖构造负载、并发请求、数据采集和指标计算。优化建议针对吐字率低、首token延迟高、QPM偏低等问题,从模型、硬件、系统等多层面提出解决方案。

blues_C的博客 1429

Altium Designer应用技巧13: 四层板的拼版方法

本文介绍在Altium Designer中,进行4层板的拼版方法。Altium Designer有多种拼版方法,本文选择最直观的复制、删帖方法来完成,步骤如下: 1、看一下原始文件,如下图所示,我们要对该板进行拼版操作。 2、通过菜单“报告”-“板子信息”得到板子大小,在这里一般切换为mm比较好操作,我们可以使用快捷键"q"。 3、如果是水平拼版,我们需要关心水平长度;如果是垂直拼版...

snmplink的博客 1万+

Nginx和Tomcat负载均衡、动静分离集群

动静分离是让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作,这就是网站静态化处理的核心思路动静分离简单的概括是:动态文件与静态文件的分离。伪静态:网站如果想被搜索引擎搜素到,动态页面静态技术freemarker等模版引擎技术。

aran2002的博客 1297

Agent Harness Engineering: AI Agent 执行管控与安全沙箱 原理与最佳实践

我们正站在计算范式转移的历史节点上。2024-2026 年间,AI 系统从被动的内容生成器(Generative AI)演变为主动的行动执行者(Agentic AI)。这一转变的根本特征是:根据 2026 年初的行业数据:然而,能力的提升伴随着风险的指数级增长。2024-2026 年间发生的多起标志性安全事件揭示了 Agent 系统的脆弱性:案例 1:Slack AI 数据外泄事件(2024 年 8 月)案例 2:制造业供应链攻击(2026 年 Q3)案例 3:Arup 深度诈骗案(2026 年 9 月)这

AI天才研究院 1667

图文详解 配置Nginx+Tomcat负载均衡、动静分离集群

Nginx+Tomcat负载均衡、动静分离1.准备三台服务器2.部署Nginx 负载均衡器3.部署2台Tomcat 应用服务器 1.准备三台服务器 Nginx 服务器:192.168.116.100:80 Tomcat服务器1:192.168.116.70:8080 Tomcat服务器2:192.168.116.120:8080 192.168.116.120:8081 2.部署Nginx 负载均衡器 systemctl stop firewalld setenforce 0 yum -y insta

穷则独善其身 达则兼善天下 1306

云原生之容器编排实践-在K8S集群中使用Registry2搭建私有镜像仓库

基于前面搭建的3节点 Kubernetes 集群,今天我们使用 Registry2 搭建私有镜像仓库,这在镜像安全性以及离线环境下运维等方面具有重要意义。作为测试环境,本次使用 Registry2 搭建了私有镜像仓库,实际生产环境建议使用 Harbor;创建了一个 local-storage 的 StorageClass ,并使用本地磁盘的方式创建使用 PV ,实际建议使用 NFS 。

Heartsuit的博客 2460

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

tomcat + nginx 的 负载均衡和动静分离集群

tomcat + nginx 的 负载均衡和动静分离集群 一 概述 1.1 什么是集群 所谓集群是指一组独立的计算机系统构成的一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信,对外表现为一个整体,对外提供相同 的服务。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。通俗一点来说,就是让若干台计算机联合起来工作(服务),可以是并行的,也可以是做备份。 1.2 集群的特点 ...

知己一语的博客 106

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Nginx+Tomcat实现负载均衡、动静分离集群部署

Nginx+Tomcat实现负载均衡、动静分离集群部署一、Tomcat多实例部署1、安装好jdk2、安装tomcat3、配置tomcat环境变量4、修改tomcat2中的server.xml文件,要求各tomcat实例配置不能有重复的端口号5、修改各tomcat实例中的startup.sh和shutdown.sh文件,添加tomcat环境变量6、启动各tomcat中的/bin/startup.sh7、浏览器访问测试二、Nginx负载均衡1、Nginx应用2、Nginx负载均衡实现原理三、Nginx动静分离1

王大雏的博客 782

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

计算机控制技术及应用

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

Nginx & Tomcat之负载均衡与动静分离集群部署

Nginx & Tomcat之负载均衡与动静分离集群部署一、Nginx负载均衡与动静分离原理二、实验实验环境1. Nginx服务器配置2. Tomcat服务器配置 一、Nginx负载均衡与动静分离原理 首页使用精准匹配 静态页面使用正则匹配自己处理 动态页面使用正则匹配jsp结尾的请求,使用proxy_pass转发给Tomcat服务器 二、实验 实验环境 主机 操作系统 IP地址 软件包 Nginx Server CentOS7 192.168.117.20 nginx-1.12

Ryu_hayabusa的博客 299

tomcat + nginx 的 负载均衡和动静分离集群

所谓集群是指一组独立的计算机系统构成的一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信,对外表现为一个整体,对外提供相同 的服务。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。通俗一点来说,就是让若干台计算机联合起来工作(服务),可以是并行的,也可以是做备份。高性价比,高性能,负载均衡,高可靠,可伸缩性…当服务器的性能达到瓶颈,我们可以纵向扩展,也就是添加或者替换高性能CPU,添加内存等操作。但是这些随着性能的提升,价格也在提高。并且,始终有一天性能会达到瓶颈,无法满足服务需求。并且

Stevelu的技术博客 417

Nginx+Tomcat实现负载均衡、动静分离集群

Nginx+Tomcat实现负载均衡、动静分离集群一、Nginx负载均衡原理1)Nginx静态处理优势二、Nginx动静分离原理 一、Nginx负载均衡原理 Nginx服务器作为前端,Tomcat服务器作为后端,web页面请求由Nginx服务来进行转发。 但是不是把所有的web请求转发,而是将静态页面请求Nginx服务器自己来处理,动态页面请求,转发给后端的Tomcat服务器来处理。 Tomcat是属于轻量级的应用服务器,可接受访问量可能会不足,所以我们需要多台Tomcat服务器,然后通过Nginx配置权

weixin_53567573的博客 3063
上一篇: 高效多用的群集-Haproxy搭建Web集群
下一篇: Nginx+Tomcat负载均衡访问网页出现报错HTTP Status 400 – 错误的请求
IHBOS
博客等级 码龄6年 112粉丝 106原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值