zookeeper安装集群配置(跪了的一次体验)

​zookeeper集群配置与启动 (4)将server1上已经配置好的/home/dennis/zookeeper-3.4.5/和/var/lib/zookeeper两个目录分别拷贝至server2和server3。然后将其上的/var/lib/zookeeper/myid的内容修改为2和3.(1)解压:这里假定以dennis作为用户名进行安装,将zookeeper-3.4.5.tar.gz放入/home/dennis目录下,然后执行”tar zxf zookeeper-3.4.5.tar.gz”解压。第二步:下载Zookeeper. 阅读详情

一、虚拟机安装

  1. 安装VMware Workstation;
  2. 安装至少三台虚拟机。。。没错。。。三台都要配置!!!
  3. 虚拟机名字都设置成不一样的。比如server1 server2 server3…

二、安装jdk

又是巴拉巴拉一大堆。

三、zookeeper安装

1.下载zookeeper的安装包

将文件保存到Server1的/usr/local/目录下(目录可以自行设置)

2.解压并重命名

[root@Server1 local]# tar -zxvf zookeeper-3.4.9.tar.gz
//该重命名步骤纯属为了以后方便,可以省略
[root@Server1 local]# mv zookeeper-3.4.9 zookeeper

3.相关参数配置

a)进入解压好的zookeeper目录中,将conf/zoo_sample.cfg拷贝一份命名为zoo.cfg

[root@Server1 local]# cd zookeeper
[root@Server1 zookeeper]# cd conf
[root@Server1 conf]# cp zoo_sample.cfg zoo.cfg
[root@Server1 conf]# vi zoo.cfg

b)修改zoo.cfg配置文件如下:

# example sakes.
dataDir=/home/zookeeper/data
dataLogDir=/home/zookeeper/logs
这里默认原为dataDir=/tmp/zookeeper,这样重启后就会清空

然后在文件末尾加上:
server.1=192.168.1.104:2888:3888
server.2=192.168.1.105:2888:3888
server.3=192.168.1.105:2888:3888
斜体部分为对应虚拟机的ip
终端输入 ifconfig 可以查询虚拟机的ip

c)在/home/zookeeper目录下新建data和logs文件夹,在data和logs目录下新建myid文件,将数字写入myid中

mkdir data
mkdir logs
[root@Server1 conf]# cd /home/zookeeper/data
[root@Server1 conf]# catch myid
[root@Server1 data]# echo "1"> myid
然后进入logs文件夹同样操作,将1写入myid文件

注意:这个id(即上面echo后的1)是zookeeper的主机标识,每个主机id不同,第一台是1,第二台是2,以此类推。且id要与zoo.cfg配置的对应。

d)可以考虑将zookeeper相关命令配置在环境变量中

e)重复以上步骤在其它虚拟机上安装zookeeper

4.启动zookeeper

[root@Server1 logs]# cd /usr/local/zookeeper/bin
[root@Server1 bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

逐个启动每台虚拟机中的zookeeper。

5.查看zookeeper状态

[root@Server1 bin]# ./zkServer.sh status

正常来说会显示 两者其一。

ZooKeeper JMX enabled by default
Using config: /usr/bin/zookeeper/bin/../conf/zoo.cfg
Mode: follower
ZooKeeper JMX enabled by default
Using config: /usr/bin/zookeeper/bin/../conf/zoo.cfg
Mode: leader

如果出现error
。。。
那你很幸运。
先把zookeeper关了,然后再排错,排错看zkServer.out文件

(做好心理准备,排错能排到你怀疑人生,没错,我就是那个差点怀疑人生的幸运儿)

6.关闭zookeeper

[root@Server1 bin]# ./zkServer.sh stop
Zookeeper的安装部署 zookeeper参数配置说明 集群搭建,查看集群状态 阅读详情

相关推荐

写一个b站爬虫(思路)

part 0 安装 scrapy, requests part 1 信息获取 打开番剧索引链接(https://www.bilibili.com/anime/index/) F12控制台,选中NETWORK,来到xhr文件,我们可以找到了存放番剧json的地方

kou的博客 488

zookeeper系列(三)——伪集群配置

1.在conf文件夹下建zoo1.cfg、zoo2.cfg、zoo3.cfg进程三个配置文件。配置如下 zoo1.cfg tickTime=2000 initLimit=10 syncLimit=5 dataDir=F:/zookeeper/data/1 dataLogDir=F:/zookeeper/logs/1 clientPort=2181 server.1=127.0.0.1:8880

咸鱼老罗的博客 1308

如何运用好DeepSeek为自己服务:智能增强的范式革命 || 目录

1.1 认知增强的三次浪潮1.2 DeepSeek认知增强模型1.3 人机认知耦合协议1.4 认知增强的数学基础。

𝓓𝓸𝓶𝓲𝓷𝓪𝓽𝓲𝓷𝓰 𝓐𝓵𝓵 𝓣𝓱𝓲𝓷𝓰𝓼 1226

canal 在ZK 中的目录

/otter/canal:canal的根目录 /otter/canal/cluster:整个canal server的集群列表 /otter/canal/destinations:destination的根目录 /otter/canal/destinations/dest1/running:服务端当前正在提供服务的running节点 /otter/canal/destinations/dest1/cluster:针对某个destination的工作集群列表 /otter/canal/destina

wangbaosongmsn的博客 904

【客户案例】母婴行业头部品牌是如何做私域的

各品牌争相跑马圈地,想方设法圈住流量,建立品牌资产;私域运营是一项“重人力”的工作,在传统的品牌运营过程中,私域操盘手经常会由于一对多导致无法兼顾,只能通过提高触达次数的方式加大漏斗,这样难以让每个社群都发挥出应有的价值,甚至还会导致一定程度的用户流失。除了宝妈身份外激发的用户认同感、亲密度外,KOC们作为产品的使用者,自由选择的推品和自由创作的推广文案都更具有真实性、代表性,能够极大程度激发群友们的信任感,从而愿意为产品买单,转化复购水到渠成。不同阶段的宝妈,母婴知识的储存量和经验是不同的,K品牌还会。.

圈量SCRM系统-企微营销工具-私域流量运营软件 948

Pseudobulk与FindMarkers单细胞差异基因分析实战对比

本文深入对比了单细胞差异基因分析中Pseudobulk与FindMarkers两种主流方法。通过实战演示,详细解析了二者在底层逻辑、数据准备、分析流程及结果解读上的核心差异,并提供了基于不同生物学问题与数据特点的选择策略,帮助研究者做出更精准的分析决策。

weixin_29218963的博客 334

binlog以及Canel

一、NDB存储引擎 在介绍binlog之前,需要先了解一下NDB NDB 存储引擎也叫NDB Cluster 存储引擎,主要用于MySQL Cluster 分布式集群环境。 NDB特点: • 分布式:分布式存储引擎,可以由多个NDBCluster存储引擎组成集群分别存放整体数据的一部分 • 支持事务:和Innodb一样,支持事务 • 可与mysqld不在一台主机...

HY—Chan 1万+

树莓派上基于ONNXRuntime与Qt的C++模型部署实战指南

本文详细介绍了在树莓派上使用ONNXRuntime与Qt进行C++模型部署的完整流程。从环境配置、依赖安装到交叉编译优化,再到Qt界面集成与ARM架构性能调优,提供了实战指南和常见问题解决方案,帮助开发者高效完成边缘设备上的AI应用部署。

ik6789012的博客 340

使用canal同步mysql变更到elasticsearch及其坑

部署图这是一开始的部署图,没有加消息队列,消息队列后面再加的前期准备

flyawayjh的博客 3万+

2025年全国青少年信息素养大赛初赛真题(算法创意实践挑战赛C++初中组:文末附答案)

2025年全国青少年信息素养大赛初赛真题(算法创意实践挑战赛C++初中组:文末附答案)

王老师青少年编程 3398

华为OD机试 - 不含101的数(Python/JS/C/C++ 双机位C卷 100分)

本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。小明在学习二进制时,发现了一类不含101的数,也就是:现在给定一个正整数区间,请问这个区间内包含了多少个不含101的数?输入的唯一一行包含两个正整数。输出的唯一一行包含一个整数,表示在区间内一共有几个不含101的数。8 1668 → “1000”

学Java,找哪吒 1252

canal中持久化到zookeeper的结构

从canal源码注释看到持久化到zookeeper的目录树:    /otter/canal:canal的根目录 /otter/canal/cluster:整个canal server的集群列表 /otter/canal/destinations:destination的根目录 /otter/canal/destinations/dest1/running:服务端当前正在提供服务的r...

worldchinalee的博客 3351

博途PLC S7-1200/1500 ModbusTcp通信SCL代码篇(轮询)

博途PLC MODBUS TCP的详细讲解和注意事项,可以参看下面这篇博文,这里不在赘述。这篇作为SCL代码篇主要给出SCL语言下的轮训写法和注意事项。博途PLC1200/1500PLC ModbusTcp通信(轮询处理)_RXXW_Dor的博客-优快云博客。............

RXXW_Dor的博客 8430

【Zookeeper集群搭建】安装zookeeper、zookeeper集群配置、zookeeper启动与关闭、zookeeper的shell命令操作

安装zookeeper、zookeeper集群配置、zookeeper启动与关闭、zookeeper的shell命令操作

2201_75539359的博客 9525

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Linux 环境下安装 Zookeeper及集群配置

Linux 环境下安装 Zookeeper准备工作安装配置 zookeeper 准备工作 1、下载安装jdk: 参考此链接:https://blog.youkuaiyun.com/qq_36763419/article/details/109472474 2、下载 zookeeper: zookeeper官网链接:https://zookeeper.apache.org/releases.html#download 复制链接使用 wget 指令下载: wget https://downloads.apache.or

陌守 8423

OV9734 DATASHEET,完整规格书

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

Zookeeper的安装部署,zookeeper参数配置说明,集群搭建,查看集群状态

1、Zookeeper的安装部署7.1 Zookeeper工作机制7.1.1、Zookeeper集群角色Zookeeper集群的角色: Leader 和 follower(Observer)zk集群最好配成奇数个节点只要集群中有半数以上节点存活,集群就能提供服务7.2 Zookeeper部署7.2.1 机器准备1/ 安装到3台虚拟机上,准备的三台服务器地址是: C:\Windows\S

涂作权的博客 1万+

kafka集群安装配置,外置zookeeper

一:准备工作: 1、集群划分: 2、安装包下载: Kafka安装包下载: Apache Kafka 将安装包放在:/home/KYJ/soft文件下面 Zookeeper安装包下载: http://zookeeper.apache.org 将安装包放在:/home/KYJ/soft文件下面 二:解压安装包 使用命令: tar -zxvf kafka_2.12-3.0.0.tgz tar -zxvf apache-zookeeper-3.7....

kyj3518861703的博客 3221

Zookeeper集群环境安装过程详解

Zookeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronization)、命名服务(Naming Service)、集群维护(Group Maintenance)等,简化分布式应用协调及其管理的难度,提供高性能的分布式服务。ZooKeeper本身可以以单机模式安装运行,不过它的长处在于通过分布式ZooKeeper集群(一个Leader,多个Follower),基于一定的策略来保证ZooKeeper集群的稳定性

cruise技术博客 2万+

Zookeeper 的安装配置

本文主要包括 zk 的简单介绍、zk 集群的安装配置以及zk 的启动。 整个过程记录详细,每个步骤亲历亲为实测可用。同时,包含多个脚本文件的编写,便捷集群环境的搭建配置。

qq_53574266的博客 2419

zookeeper集群的安装和配置

Zookeeper是一个高性能,分布式的,开源分布式应用协调服务。它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如分布式同步(Distributed Synchronization)、命名服务(Naming Service)、集群维护(Group Maintenance)、名空间(Name Space)等。它被设计为易于编程,使用文件系统目录树作为数据模型。 Zookeep

ZK_小小世界的专栏 1万+

ZooKeeper集群安装

目录JDK安装Zookeeper集群安装 ZooKeeper(动物园管理者)简称 ZK,是一个分布式的,开放源码的分布式应用程序协调服务组件,它的应用场景如下: 1、服务注册 2、分布式锁 3、配置管理 4、集群Master 选举 安装zookeeper集群,本文环境信息说明如下:系统CentOS7IP192.168.136.128hostnamexjw128jdk版本jdk1.8.0_181zookeep

xujinwei_gingko的专栏 1366

Zookeeper集群安装

Zookeeper集群部署及简单客户端基本命令操作

qq_66281927的博客 1555

Zookeeper日志配置以及集群搭建

1、下载与安装 1.1、准备 Java 运行环境 1.2、下载 ZooKeeper 安装包 下载地址: http://zookeeper.apache.org/releases.html 1.3、安装与配置 解压至某目录,以$ZK_HOME表示zookeeper安装目录 参考: http://blog.youkuaiyun.com/morning99/article/details

halimao的博客 2985

Linux安装Zookeeper集群版

Linux安装Zookeeper集群版 前置条件:需要安装jdk 1.8 三台虚拟机:一主两从(已经提前做了免密登录,hostname修改,hosts映射) node1 node2 node3 版本 版本号:zookeeper-3.4.10 一、安装包上传解压 1.安装包下载地址 链接: https://pan.baidu.com/s/1EZq9J3rUBABv0wW46BvtOg 密码: pwro 2.上传到服务器 自行选择上传方式 3.将压缩包解压到指定文件目录 tar -zxvf zookeeper

qq_42269466的博客 1768

zookeeper的安装集群版

1、zookeeper的安装 准备: 1、三台配置好jdk环境的虚拟机 2、防火墙关闭状态 3、vim安装 (不太重要)(自我感觉安装一下好看一些) 防火墙关闭链接 安装虚拟机1 安装虚拟机2 静态ip idk环境的安装 1.1、下载 1.1.1、官网下载 首先去官网下载一个安装包 https://archive.apache.org/dist/zookeeper/zookeeper-3.5.5/ 是我画红线的那个别下错了 1.1.2、网盘下载 链接:https://pan.baidu.com/s/1jZ

花开一千年,花落一千年,花叶永不见 11万+

Ubuntu下安装Zookeeper集群

Zookeeper集群是一个开源的分布式协调服务系统,它由Apache软件基金会维护,旨在为分布式应用提供一致性和可靠性的服务。在Zookeeper集群中,服务器可以扮演三种角色——领导者(Leader)、跟随者(Follower)和观察者(Observer,部分版本或配置中可能不包含)。领导者负责处理客户端的写请求和集群内部的调度,跟随者则处理读请求并同步领导者的数据,观察者类似于跟随者,但不参与投票过程。

月亮的技术博客 1518
上一篇: Ubuntu——安装指南+初级设置
下一篇: zookeeper status出现error的解决方案
HY_Chan
博客等级 码龄10年 54粉丝 60原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值