【微服务】Dubbo 和 Spring Cloud 比较

Spring Cloud简介,微服务架构,以及与Dubbo的详细比较 什么是Spring Cloud Spring Cloud 是一套完整的微服务解决方案,基于 Spring Boot 框架,准确的说,它不是一个框架,而是一个大的容器,它将市面上较好的微服务框架集成进来,从而简化了开发者的代码量。 为什么需要Spring Cloud Spring Cloud 是整个 Spring 家族中新的成员,要致力于分布式系统、云服务的框架。 Spring Cloud 为开发人... 阅读详情

【本文是为了梳理知识的总结性文章,总结了一些自认为相关的重要知识点,只为巩固记忆以及技术交流,忘批评指正。其中参考了很多前辈的文章,包括图片也是引用,如有冒犯,侵删。】
当前开源上可选用的微服务框架主要有Dubbo、Spring Cloud等,下面对这两个框架做一个简单对比介绍。

1 概念

Dubbo:Apache Dubbo是一款高性能Java RPC框架,之前由阿里巴巴开源,现已成为 Apache 基金会孵化项目。

Spring Cloud:是一个基于Spring Boot实现的微服务架构开发工具,它使用一系列开源框架,为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、微代理、控制总线、一次性token、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。

Dubbo具有调度、发现、监控、治理等功能,支持相当丰富的服务治理能力。而Spring Cloud 则满足了构建微服务所需的所有解决方案,其中包括了服务治理,因此可以说Dubbo是Spring Cloud的一个子集。

架构选型一般会考虑几个因素,如社区活跃度、功能完整度、技术特点和业务需求等。下面从这几个方面,对这两个框架进行对比介绍。

2 社区活跃度

我们选择一个开源框架,社区的活跃度是我们极为关注的一个要点。社区越活跃,解决问题的速度越快,框架也会越来越完善,不然当我们碰到问题,就不得不自己解决。而对于团队来说,也就意味着我们不得不自己去维护框架的源码,这对于团队来说也将会是一个很大的负担。

2.1 Dubbo 社区

2011 年 10 月 27 日,阿里巴巴开源了自己服务化治理方案的核心框架 Dubbo,服务治理的设计理念开始逐渐在国内软件行业中落地,并被广泛应用。自开源后,许多非阿里系公司选择使用 Dubbo,其中既有当当网、网易考拉等互联网公司,也有中国人寿、青岛海尔等传统企业。

2012 年 10 月 23 日 Dubbo 2.5.3 发布后,在 Dubbo 开源将满一周年之际,阿里基本停止了对 Dubbo 的主要升级。

2013 年,2014 年,更新了 2 次 Dubbo 2.4 的维护版本,然后停止了所有维护工作。至此,Dubbo 对 Srping 的支持也停留在了 Spring 2.5.6 版本上。

阿里停止维护和升级 Dubbo 期间,当当网开始维护自己的 Dubbo 分支版本 Dubbox,新增支持了新版本的 Spring,支持了 Rest 协议等,并对外开源了 Dubbox。同时,网易考拉也维护了自己的独立分支 Dubbok,可惜并未对外开源。

2017 年 9 月 7 日,Dubbo 悄悄在 GitHub 发布了 2.5.4 版本。随后,又迅速发布了 2.5.5、2.5.6、2.5.7 等版本。在 10 月举行的云栖大会上,阿里宣布 Dubbo 被列入集团重点维护开源项目,这也就意味着 Dubbo 起死回生,开始重新进入快车道。

2018 年 1 月 8 日,Dubbo 2.6.0 版本发布,新版本将之前当当网开源的 Dubbox 进行了合并,实现了 Dubbo 版本的统一整合。

2018 年 2 月 9 日,成为 Apache 基金会孵化项目。

自此,Dubbo 开始了两个长期维护的版本,Dubbo 2.6.x (包名:com.alibaba)稳定维护版本和 Dubbo 2.7.x (包名:org.apache)apache 孵化版本。

2018 ~ 2019 年,在此期间,Dubbo 发布了 4、5 个版本,并发布了 nodejs,python,go 等多语言的客户端。

2019 年 1 月,2.7.0 release 版本发布,这个 apache 版本支持了丰富的新特性,全新的 Dubbo Ops 控制台。时至 5 月,Dubbo 来到了 2.7.2 版本,期间积极引入了新的特性,支持 consul,nacos,etcd 等注册中心。

2019 年 5 月 21 号,经过了漫长的孵化期,Dubbo 成为Apache 基金会顶级项目。

虽然阿里内部原因 Dubbo 曾经一度暂停维护版本,但是框架本身的成熟度以及文档的完善程度,完全能满足各大互联网公司的业务需求,在国内有很多的成熟用户,在国内影响力较大。

2.2 Spring Cloud 社区

有强大的 Spring 社区、Netflix 等公司支持,并且开源社区贡献非常活跃。Netflix 很早就成功实践微服务,几年前把自家几乎整个微服务框架栈贡献给了社区,Spring Cloud主要是对Netflix开源组件的进一步封装。

社区支持强大,更新非常快,开发效率高。

3 功能完整度

在功能方面,Dubbo只是实现了服务治理,而Spring Cloud下面有24个子项目(可能还会新增)分别覆盖了微服务架构下的方方面面,服务治理只是其中的一个方面。在选择框架上,方案完整度恰恰是一个需要重点关注的内容。

3.1 Dubbo 功能

Dubbo具有调度、发现、监控、治理等功能,支持相当丰富的服务治理能力。Dubbo架构下,注册中心对等集群,并会缓存服务列表以备注册中心失效时继续提供发现功能,本身的服务发现结构有很强的可用性与健壮性,足够支持高访问量的网站。虽然,Dubbo自身只是实现了服务治理的基础,其他为保证集群安全、可维护、可测试等特性方面都没有很好的实现,但是几乎大部分关键组件都能找到第三方开源来实现,这些组件主要来自于国内各家大型互联网企业的开源产品。

3.2 Spring Cloud 功能

Spring Cloud由众多子项目组成,如Spring Cloud Config、Spring Cloud Netflix、Spring Cloud Consul 等,提供了搭建分布式系统及微服务常用的工具,如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性token、全局锁、选主、分布式会话和集群状态等,满足了构建微服务所需的所有解决方案。比如使用Spring Cloud Config 可以实现统一配置中心,对配置进行统一管理;使用Spring Cloud Netflix 可以实现Netflix 组件的功能 - 服务发现(Eureka)、智能路由(Zuul)、客户端负载均衡(Ribbon)。

但它并没有重复造轮子,而是选用目前各家公司 开发的比较成熟的、经得住实践考验的服务框架,通过Spring Boot 进行封装集成并简化其使用方式。基于Spring Boot,意味着其使用方式如Spring Boot 简单易用;能够与Spring Framework、Spring Boot、Spring Data 等其他Spring 项目完美融合,意味着能从Spring获得巨大的便利,意味着能减少已有项目的迁移成本。

3.3 功能对比

Dubbo 提供了各种 Filter,对于上述中“无”的要素,可以通过扩展 Filter 来完善。例如:

  • 分布式配置:可以使用淘宝的 diamond、百度的 disconf 来实现分布式配置管理。
  • 服务跟踪:可以使用京东开源的 Hydra,或者扩展 Filter 用 Zippin 来做服务跟踪。
  • 批量任务:可以使用当当开源的 Elastic-Job、tbschedule。

从核心要素来看,Spring Cloud 更胜一筹,在开发过程中只要整合 Spring Cloud 的子项目就可以顺利的完成各种组件的融合,而 Dubbo 却需要通过实现各种 Filter 来做定制,开发成本以及技术难度略高。

Dubbo实现了服务治理的基础,但是要完成一个完备的微服务架构,还需要在各环节去扩展和完善以保证集群的健康,以减轻开发、测试以及运维各个环节上增加出来的压力,这样才能让各环节人员真正的专注于业务逻辑。而Spring Cloud依然发扬了Spring Source整合一切的作风,以标准化的姿态将一些微服务架构的成熟产品与框架揉为一体,并继承了Spring Boot简单配置、快速开发、轻松部署的特点,让原本复杂的架构工作变得相对容易上手一些。所以,如果选择Dubbo请务必在各个环节做好整套解决方案的准备,不然很可能随着服务数量的增长,整个团队都将疲于应付各种架构上不足引起的困难。而如果选择Spring Cloud,相对来说每个环节都已经有了对应的组件支持,可能有些也不一定能满足你所有的需求,但是其活跃的社区与高速的迭代进度也会是你可以依靠的强大后盾。

4 技术特点

4.1 通讯协议

Dubbo:dubbo使用RPC通讯协议,提供序列化方式如下:

  1. dubbo:Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况
  2. rmi:RMI协议采用JDK标准的java.rmi.*实现,采用阻塞式短连接和JDK标准序列化方式
  3. Hessian:Hessian协议用于集成Hessian的服务,Hessian底层采用Http通讯,采用Servlet暴露服务,Dubbo缺省内嵌Jetty作为服务器实现
  4. http:采用Spring的HttpInvoker实现
  5. Webservice:基于CXF的frontend-simple和transports-http实现

Spring Cloud:Spring Cloud 使用HTTP协议的REST API。

dubbo支持各种通信协议,而且消费方和服务方使用长链接方式交互,通信速度上略胜Spring Cloud,如果对于系统的响应时间有严格要求,长链接更合适。

4.2 服务依赖方式

Dubbo 使用面向接口代理的高性能RPC调用,使得服务提供方(抽象接口)与调用方在代码上产生了强依赖,服务提供者需要不断将包含抽象接口的 jar 包打包出来供消费者使用。一旦打包出现问题,就会导致服务调用出错,并且以后发布部署会成很大问题(太强的依赖关系)。

Spring Cloud 支持 REST 服务调用,相比于 RPC,更加轻量化和灵活(服务之间只依赖一纸契约,不存在代码级别的强依赖),有利于跨语言服务的实现,以及服务的发布部署。服务提供方和服务消费方通过json方式交互,因此只需要定义好相关json字段即可,消费方和提供方无接口依赖。

Dubbo服务依赖略重,需要有完善的版本管理机制,但是程序入侵少。而Spring Cloud通过Json交互,省略了版本管理的问题,但是具体字段含义需要统一管理,自身Rest API方式交互,为跨平台调用奠定了基础。这也是为什么当当网在dubbox(基于Dubbo的开源扩展)中增加了对REST支持的原因之一。

4.3 组件运行流程

dubbo

Dubbo中的每个组件都是需要部署在单独的服务器上,gateway用来接受前端请求、聚合服务,并批量调用后台原子服务。每个service层和单独的DB交互。

gateWay:前置网关,具体业务操作,gateWay通过dubbo提供的负载均衡机制自动完成

Service:原子服务,只提供该业务相关的原子服务

Zookeeper:原子服务注册到zk上

Spring Cloud

所有请求都统一通过 API 网关(Zuul)来访问内部服务。

网关接收到请求后,从注册中心(Eureka)获取可用服务。

由 Ribbon 进行均衡负载后,分发到后端的具体实例。

微服务之间通过 Feign 进行通信处理业务。

业务部署方式相同,都需要前置一个网关来隔绝外部直接调用原子服务的风险。Dubbo需要自己开发一套API 网关,而Spring Cloud则可以通过Zuul配置即可完成网关定制。使用方式上Spring Cloud略胜一筹。

5 业务需求

在技术选型时需要考虑目前的业务需求,比如内部是否存在异构系统集成的问题,备选框架功能特性是否满足需求,http协议的通信对于应用的负载量会否真正成为瓶颈点等。

5.1 dubbo 适合的业务特点

根据Dubbo官方说法,在小数据量的情况下表现卓越。虽然Dubbo 支持短连接大数据量的服务提供模式,但绝大多数情况下都是使用长连接小数据量的模式提供服务使用的。所以,对于类似于电商等同步调用场景多并且能支撑搭建Dubbo 这套比较复杂环境的成本的产品而言,Dubbo 确实是一个可以考虑的选择。但如果产品业务中由于后台业务逻辑复杂、时间长而导致异步逻辑比较多的话,可能Dubbo 并不合适。

5.2 Spring Cloud 适合的业务特点

提起Spring Cloud,一些开发的第一印象是http+JSON的rest通信,性能上难堪重用,其实这也是一种误读。Spring Cloud也并不是和http+JSON强制绑定的,如有必要Thrift、protobuf等高效的RPC、序列化协议同样可以作为替代方案。

 

参考文章

【1】http://blog.itpub.net/31556476/viewspace-2645082/

【2】http://blog.didispace.com/microservice-framework/

【3】https://www.zhihu.com/question/45413135/answer/226794957

【4】https://cloud.tencent.com/developer/article/1116063

【5】https://www.zhihu.com/question/45413135

 

【Web实战】微信小程序逆向 2E 70 6E 67”为带存放路径的文件名称,“00 00 11 7C”对应文件在小程序包中的具体偏移位置,“00 01 01 F7“对应文件在小程序包中的数据长度。但这并不是最初的原项目文件结构,原因是微信服务器会将小程序源码中所有的“js”文件压入“app-service.js”文件中,将所有的“json”文件压入“app-config.json”中,将所有的“wxml”文件压入“page-frame.html”文件中,“wxss”则在处理之后以“html”文件的形式存留在对应页面目录之下。 阅读详情

相关推荐

VLP16:使用pointcloud_to_laserscan将三维点云转化为二维LaserScan

velodyne16线激光雷达 VLP16:使用pointcloud_to_laserscan将三维点云转化为二维LaserScan

NEUer_ljx的博客 4619

SpringCloud 和 Dubbo,哪个才是微服务主流?

SpringCloud 和 Dubbo,哪个才是微服务主流?

javamyfriend的博客 1802

泛微Ecology流程数据表结构解析:workflow_requestbase和workflow_currentoperator到底怎么关联查询?

本文深入解析泛微Ecology系统中workflow_requestbase和workflow_currentoperator表的结构与关联机制,提供SQL查询语句示例,帮助开发者高效查询流程数据。涵盖待办事项、已办事项、办结事项和流程监控等典型场景,并分享性能优化技巧和常见问题排查指南。

weixin_33738555的博客 807

SpringCloud与Dubbo的比较

SpringCloud与Dubbo的比较及异同点

程序大视界 11万+

5G物理层基础知识

1、关于RB和RE (1) RB(Resource Block,资源块)频率上连续12个子载波,时域上一个slot(时隙,14个ofdm符号) (2) RE(Resource Element,资源单元)频率上一个子载波,及时域上一个ofdm符号 注意:协议规定,5G每个时隙(非扩展CP)的符号数为14个(扩展CP情况下每个时隙有12个符号),而LTE(非扩展CP)每个时隙的符号数为7个。 简单说:一个12X14的方格,大的整个叫一个RB,每一个小块叫一个RE。另外,一个RE可存放一个调制符号(mo.

qq_39074243的博客 2万+

强化学习——day16 动态规划算法

动态规划(dynamic programming)是程序设计算法中非常重要的内容,能够高效解决一些经典问题,例如背包问题和最短路径规划。动态规划的基本思想是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到目标问题的解。动态规划会保存已解决的子问题的答案,在求解目标问题的过程中,需要这些子问题答案时就可以直接利用,避免重复计算。本章介绍如何用动态规划的思想来求解在马尔可夫决策过程中的最优策略

想太多的学习日志 1550

springcloud 和 dubbo 的优缺点,已经使用场景,如何进行技术选型

在实际项目中,也可以考虑将Spring Cloud和Dubbo结合使用,充分发挥它们各自的优势,构建更强大的分布式系统。Spring Cloud和Dubbo都是在分布式系统中使用的优秀框架,它们有着不同的特点和适用场景。如果项目需要与非Java项目集成,那么Spring Cloud可能提供更好的支持,因为Spring Cloud的组件大多都是基于HTTP协议。Dubbo则更专注于分布式服务治理。如果对性能要求非常高,特别是对于RPC通信的性能要求高,那么Dubbo可能是更适合的选择。

杨海吉 1091

在鸿蒙中使用AVPlayer完成视频的播放【坚果派】

播放的全流程包含:创建AVPlayer,设置播放资源和窗口,设置播放参数(音量/倍速/缩放模式),播放控制(播放/暂停/跳转/停止),重置,销毁资源。5.准备播放:调用prepare(),AVPlayer进入prepared状态,此时可以获取duration,设置缩放模式、音量等。8.退出播放:调用release()销毁实例,AVPlayer进入released状态,退出播放。6.视频播控:播放play(),暂停pause(),跳转seek(),停止stop() 等操作。今天我们来看一下视频如何正常播放。

坚果的博客 4056

微服务Dubbo和SpringCloud架构设计、优劣 势⽐较

Dubbo出⽣于阿⾥系,是阿⾥巴巴服务化治理的核⼼框架,并被⼴泛应⽤于中国各互联⽹公司;只需要通过spring配置的⽅式即可完成服务化,对于应⽤⽆⼊侵。设计的⽬的还是服务于⾃身的业务为主。虽然阿⾥内部原因dubbo曾经⼀度暂停维护版本,但是框架本身的成熟度以及⽂档的完善程度,完全能满⾜各⼤互联⽹公司的业务需求。如果我们需要使⽤配置中⼼、分布式跟踪这些内容都需要⾃⼰去集成,这样⽆形中增加了使⽤Dubbo的难度。httpshttpshttpshttpshttpshttps。...

weixin_43118617的博客 3258

Lumerical 教程目录,说明及个人感悟(共计138篇,持续更新中)

Lumerical---教程说明及个人感悟

u011699626的博客 1万+

别再无脑调打码平台了!聊聊 ddddocr 在爬虫验证码识别中的真实边界

ddddocr是国产开源社区的优秀成果,它大幅降低了验证码识别的入门门槛。工具的自由不等于工程的自由。真正的能力不在于“会不会调库”,而在于能否准确判断工具的适用边界、构建鲁棒的容错机制、并在成本与效果之间做出理性权衡。下次当你准备在爬虫中加入验证码识别时,不妨先问自己:这个站点的验证码类型是否在ddddocr的能力圈内?我的预处理是否针对该站点做过专项调试?我的失败重试和监控机制是否完备?如果三个问题都能肯定回答,那么ddddocr就是你的利器;如果有任何一个犹豫,请先补齐短板再上路。评论区交流:你用。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1279

Dubbo,SpringCloud,Webservice有啥区别,如何技术选型

如果是Java微服务架构,且对服务治理要求较高,Spring Cloud可能是更好的选择。如果是跨语言的企业级服务集成,WebService可能更合适。对于小型微服务,Dubbo也是一个简单高效的选择。当然,也可以根据具体需求进行组合使用。作为2023年8月的助理,我很高兴为您分析这几种分布式服务框架的区别和技术选型建议。总之,这三种分布式服务框架各有优缺点,需要根据实际情况进行适当的技术选型。

weixin_39304656的博客 393

BF8815A

了解ADBMS1818芯片的人会发现,这款BF8815B和1818有着很多相似的东西,当你了解其中一款AFE之后,另一款你的上手也会特别快,下面文章是我针对1818梳理的一些重要知识点,此篇文章主要讲解BF8815B的一些差异点。

m0_61973119的博客 561

Dubbo和Spring Cloud微服务架构比较

https://www.cnblogs.com/aspirant/p/9089146.html

weixin_43831204的博客 786

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

关于Dubbo和Spring Cloud微服务架构的比较

关于Dubbo和Spring Cloud微服务架构的比较

m0_73533108的博客 363

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Dubbo和Spring Cloud微服务架构的比较

微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如Dubbo和Spring Cloud。各大互联网公司也有自研的微服务框架,但其模式都于这二者相差不大。 微服务主要的优势如下: 1...

点火三周的专栏 1881

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Dubbo与Spring Cloud等微服务框架的深度比较及选型指南

在当今的微服务架构领域,Dubbo与Spring Cloud作为两大主流框架,各自拥有独特的设计理念与技术优势,广泛应用于不同规模和类型的项目中。本文将从多个维度深入比较Dubbo、Spring Cloud以及其他代表性微服务框架(如gRPC、Istio),以帮助开发者和架构师根据项目需求做出更合适的选择。综上所述,选择合适的微服务框架需依据具体项目需求、团队技术栈、未来可扩展性等多方面因素综合考量。每种框架都有其独到之处,正确选型能极大提升开发效率和系统稳定性。

木南曌的博客 1759

微服务-Dubbo和Spring Cloud微服务架构比较

微服务-Dubbo和Spring Cloud微服务架构比较 转载声明 本文大量内容系转载自网络,有删改,并参考其他文档资料加入了一些内容: Dubbo和Spring Cloud微服务架构比较 作者:aspirant 出处:cnblogs 1 背景 1.1 概述 Dubbo 出生于阿里系,是阿里巴巴服务化治理的核心框架,并被广泛应用于中国各互联网公司;只需要通过 Spring 配置的方式即可完成服务化,对于应用无入侵,设计的目的还是服务于自身的业务为主。 微服务架构是互联网很热门的话题,是互联网技术

迷路剑客个人博客 640

微服务相关整理,及spring cloud和dubbo的比较

当下微服务主要的优势如下: 1、降低耦合及复杂度, 每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界 2、可独立部署 3、容错, 限流、熔断、降级 4、扩展 核心描述: 服务提供方 Provider将自己要发布的服务注册到注册中心Registry,服务调用方Consumer启动后向注册中心Registry订阅它想要调用的服务,这时,注册中心Registry将其所管理的服务列表通知给到服务调用方Consumer(注册中心和提供方和调用方之间均保持长连接,可以获取Provi..

chenwch 352

Dubbo 和 Spring Cloud 微服务架构比较分析

Dubbo 和 Spring Cloud 微服务架构比较分析 前言   微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如 Dubbo 和 Spring Cloud,各大互联网...

billyuncle的博客 472

Dubbo 和 Spring Cloud微服务架构 比较及相关差异

你真的了解微服务架构吗?听听八年阿里架构师怎样讲述Dubbo和Spring Cloud微服务架构。 微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如Dubbo和Sprin...

weixin_30776545的博客 84

Spring Cloud与微服务构建(二)Spring Cloud简介 2.4 Spring Cloud 与 Dubbo比较

首先从微服务关注点来比较Spring Cloud和Dubbo两大服务框架,如表 微服务关注点 Spring Cloud Dubbo 配置管理 Config — 服务发现 Eureka、Consul、Zookeeper Zookeeper 负载均衡 Ribbon 自带 网关 Zuul — 分布式追踪 Spring Cloud Sleuth — 容错 Hystrix...

qq_40929047的博客 205
上一篇: Spring MVC 中web容器和IOC容器启动过程
下一篇: 不可不说的Java“锁”事
TaiSung
博客等级 码龄15年 49粉丝 132原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值