哪位大哥给讲讲 spring cloud 到底是个啥? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
chaleaochexist
V2EX    程序员

哪位大哥给讲讲 spring cloud 到底是个啥?

  •  
  •   chaleaochexist 2023-05-05 21:28:57 +08:00 6781 次点击
    这是一个创建于 891 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是一堆接口和实现吗? 我的理解 springcloud 是接口 spring cloud alibaba 是实现

    我这么理解可以吗? 非 java 程序员. 大佬轻喷.

    第 1 条附言    2023-05-08 14:46:18 +08:00
    专门付费咨询了一波.
    我的理解问题不大.

    下面各位大哥别吵了. 散了散了.

    感谢各位大哥的解答.
    51 条回复    2023-05-25 15:02:18 +08:00
    MakHoCheung
        1
    MakHoCheung  
       2023-05-05 21:34:43 +08:00   1
    是的
    cvbnt
        2
    cvbnt  
       2023-05-05 22:19:07 +08:00
    微服务开发解决方案
    PVXLL
        3
    PVXLL  
       2023-05-05 22:20:31 +08:00 via iPhone
    麻烦打开网站看两眼
    MIUIOS
        4
    MIUIOS  
       2023-05-05 22:42:09 +08:00   1
    Spring Cloud 为开发者提供了快速构建分布式系统中一些常用模式的工具(如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群状态)。分布式系统的协调导致样板模式,使用 Spring Cloud 开发人员可以快速建立实现这些模式的服务和应用程序。

    官方的解释,实际上 SpringCloud 是好几家厂家在维护
    以往大家都用 Spring Cloud Netflix ,但目前 Netflix 的组件基本都进入停止维护状态了
    所以国内新项目基本都采用 Spring Cloud Alibaba 了
    MIUIOS
        5
    MIUIOS  
       2023-05-05 22:44:09 +08:00   1
    你可以理解为 SpingCloud 是一个约定,大家按照这个约定开发出自家的产品
    wetalk
        6
    wetalk  
       2023-05-05 22:49:59 +08:00
    @totoro52 #5 看你的描述更像 SpringBoot ,当然 Cloud 基于 Boot
    chaleaochexist
        7
    chaleaochexist  
    OP
       2023-05-05 22:51:03 +08:00
    @PVXLL 大哥你好, 网站上面的字儿我都认识, 但是合在一起就不知道啥意思了, 非 java 程序员真不是特别理解.
    chaleaochexist
        8
    chaleaochexist  
    OP
       2023-05-05 22:51:49 +08:00
    @totoro52 大哥你好,约定我的理解就是接口.
    我的理解对吗?
    chaleaochexist
        9
    chaleaochexist  
    OP
       2023-05-05 23:01:42 +08:00
    @PVXLL 大哥你要是除了 java 还懂点 go 或者 python 的话你能做个类比吗?
    如果不懂就算了.
    PVXLL
        10
    PVXLL  
       2023-05-06 00:59:29 +08:00 via iPhone
    @chaleaochexist 如果类比就是 mysql 和 Alibaba RDS for Mysql 的类似的区别,用云服务中已有组件替换掉一些开源的组件,和自己的云服务有更高的集成度和更方便服务部署到自己的云上
    PhilFreecess
        11
    PhilFreecess  
       2023-05-06 08:11:22 +08:00   9
    ---new bing:

    Q:请用小学生都能理解的方法给我解释一下什么是 springcloud

    A:SpringCloud 是一种用来开发分布式微服务系统的工具集合。它可以帮助开发者快速地实现一些分布式系统中常见的功能,比如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等。它使用 Spring Boot 的开发方式,让开发者可以方便地启动和部署微服务。

    用小学生都能理解的方法来说,就是 SpringCloud 可以让很多小程序(微服务)之间互相认识(服务发现注册)、互相沟通(消息总线)、互相帮助(负载均衡、断路器),还可以让小程序的老师(配置中心)统一管理他们的作业(配置信息),还可以让小程序的家长(数据监控)看到他们的表现(运行状况)。
    dayeye2006199
        12
    dayeye2006199  
       2023-05-06 08:42:11 +08:00
    @chaleaochexist 你要会 k8s 的话,类比就是,spring cloud 实现了 service, configmap, dns 再加一些其他的微服务里面经常用的功能。
    但是 k8s 是语言无关的,spring cloud 是 java only 的
    bigjack
        13
    bigjack  
       2023-05-06 08:59:58 +08:00
    又是 spring boot 又是 spring cloud ,还得远程调用,还得业务接口+业务实现,mapper 接口+mapper 实现,各种注入,各种技术一套一套,实现一个简单的功能得他妈十几个文件,Java 真的是门烂语言,很早之前用 ssh 那一套没感觉这么麻烦啊
    lower
        14
    lower  
       2023-05-06 09:09:29 +08:00
    @totoro52 Dubbo RPC 都被算到 spring cloud 里面去了啊哈哈哈
    twofox
        15
    twofox  
       2023-05-06 09:17:37 +08:00
    @bigjack 你那套根本支撑不了现在的业务开发

    就我现在的这个项目来说
    二十多个功能模块,需要可以独立更新、相互调用

    ssh 实现不了
    sivl6p
        16
    sivl6p  
       2023-05-06 09:17:56 +08:00   1
    过度设计,对绝大多少数中小厂商来说。
    增加开发、运维成本
    大多数项目就像攒个万元电脑刷网页
    hoopan
        17
    hoopan  
       2023-05-06 09:18:19 +08:00
    @dayeye2006199 请教下,如果构建一套多语言的微服务架构,用 k8s 还是 spring cloud 更好?对这两个都不太熟悉
    cheng6563
        18
    cheng6563  
       2023-05-06 09:22:28 +08:00
    @bigjack 你这说的啥,Spring Boot 就是做减法的。
    Biluesgakki
        19
    Biluesgakki  
       2023-05-06 09:23:25 +08:00
    @PhilFreecess 看到作业没绷住
    cluulzz
        20
    cluulzz  
       2023-05-06 09:24:10 +08:00
    @hoopan #17 spring boot,部署用 k8s,spring cloud 也是 spring bot 加一堆 bean 弄出来的
    wolfie
        21
    wolfie  
       2023-05-06 09:29:38 +08:00
    @bigjack #13
    ssh 跟 cloud 有什么关系 这么些年没搞明白?
    hhjswf
        22
    hhjswf  
       2023-05-06 09:32:04 +08:00
    @bigjack 如果到了不得不分服务的时候,你用 ssh 就知道什么叫麻烦
    zbatman
        23
    zbatman  
       2023-05-06 09:34:21 +08:00
    @bigjack 简单的功能具体指什么?
    mypchas6fans
        24
    mypchas6fans  
       2023-05-06 09:47:48 +08:00
    @bigjack 有一说一,ssh 那个年代,应用的规模、复杂度、压力都比不上现在吧。docker k8s 啥的也没影。
    但是 java 功能还没开始写就几百行代码了真的是……
    chaleaochexist
        25
    chaleaochexist  
    OP
       2023-05-06 10:18:06 +08:00
    @PhilFreecess 小学生提问: spring cloud 和 spring cloud alibaba 的区别是什么?
    chaleaochexist
        26
    chaleaochexist  
    OP
       2023-05-06 10:19:15 +08:00
    @PhilFreecess 小学生提问: spring cloud 和 spring cloud alibaba 的区别是什么?
    @dayeye2006199 所以大哥, spring cloud 和 spring cloud alibaba 的区别是什么?
    bthulu
        27
    bthulu  
       2023-05-06 10:37:45 +08:00
    上 k8s 就行了, 不用绑死在 java 上.
    chaleaochexist
        28
    chaleaochexist  
    OP
       2023-05-06 10:40:01 +08:00
    @bthulu 我不是 java 程序员, 其实是单纯的好奇问问题.
    你说得对 如果真做项目, 应该上 k8s.
    我就是想知道 spring cloud 是啥. 是接口吗?
    spring cloud 和 spring cloud alibaba 是什么关系?

    想#11 楼的回复, 其实我自己也能查到. 包括 chatgpt 也能查到. 但是说了很多又好像没说.
    potatowish
        29
    potatowish  
       2023-05-06 10:57:36 +08:00 via iPhone   1
    通俗易懂的解释,Spring Cloud 就是一个样板房,可以直接入住。有些人不喜欢里面的家具就自己买了,比如 Spring Cloud Azure, Spring Cloud Alibaba 等。
    wangpugod2003
        30
    wangpugod2003  
       2023-05-06 10:59:36 +08:00
    真的做项目,java ,springboot 够了,做啥项目要搞到微服务啊?做个 taobao 还是支付宝?
    等你搞个 monolithic 的 java web 程序,再晋级。不然你咋知道 spring cloud 提供了哪些 module ,和 kubernetes 的区别是啥。等等。
    chaleaochexist
        31
    chaleaochexist  
    OP
       2023-05-06 11:10:41 +08:00
    @potatowish 谢谢大佬也就是说 spring cloud 提供了接口和实现.
    不过实现的不好.
    被 spring cloud alibaba 替换了. 是这个样子吧?
    Hurriance
        32
    Hurriance  
       2023-05-06 11:40:49 +08:00   1
    @chaleaochexist
    微服务是一个抽象,它通常指的是将应用按业务的纬度拆分成一个个独立的微服务,提供了一定的可拓展性、灵活性(针对某一个微服务而言)

    Spring Cloud 是 Spring 针对 Java 语言对微服务的实现,而 Spring Cloud 具体实现又有 Spring Cloud Netflix 、Spring Cloud Alibaba 、Spring Cloud AWS 等等,可能因为各个厂商面对的业务不同,所以会各自针对自己的业务进行开发。它们的差异之一体现在组件的实现不同。
    chenPiMeiHaoChi
        33
    chenPiMeiHaoChi  
       2023-05-06 12:04:20 +08:00
    我就不懂为什么非得往代码里加阿里的屎。eureka 停止维护了是不够用吗?三个 eureka 撑你几百个节点不跟玩似的,等你业务真到上千个节点了公司完全有能力自研 /去掉 cloud 换成 k8s 模式。为啥非得一个劲加阿里的屎???
    chaleaochexist
        34
    chaleaochexist  
    OP
       2023-05-06 12:17:04 +08:00
    @Hurriance 大哥问一下, "实现"和"具体实现"的区别是什么? 我目前有两种理解:
    1. spring cloud 定义了接口, spring cloud alibaba 根据接口实现了具体的实现.
    2. spring cloud 定义了接口和实现, spring cloud alibaba 提供了另一种实现,因为 spring cloud 的实现不那么好用.

    @chenPiMeiHaoChi
    大哥, 你这个回答和本案无关, 可以换个文法, spring cloud 和 spring Netflix 的区别是什么?
    chaleaochexist
        35
    chaleaochexist  
    OP
       2023-05-06 12:22:09 +08:00
    @PVXLL 那我明白了, 就是说 spring cloud alibaba 是 spring cloud 的一种实现(解决方案).

    类似 rabbitmq vs amqp
    ZeroDu
        36
    ZeroDu  
       2023-05-06 13:31:38 +08:00
    spring cloud alibaba 是阿里自几实现了几个组件;比如:注册配置中心 nacos ;但是也有其他实现的;比如 consul ,Spring Cloud Config ;基本上也可以不用 alibaba
    chaleaochexist
        37
    chaleaochexist  
    OP
       2023-05-06 13:40:05 +08:00
    @ZeroDu
    我大概明白了.
    spring cloud 自己提供了一些组件和接口.
    spring cloud Netflix 和 spring cloud alibaba 提供了一些替换的组件和接口.

    谢谢大佬.
    ssxn58
        38
    ssxn58  
       2023-05-06 15:16:20 +08:00
    @5sheep 事实上一堆夸张的概念可以忽悠甲方多掏钱,有时候甲方甚至需要有借口多花点钱
    tsubin
        39
    tsubin  
       2023-05-06 15:23:18 +08:00
    @PhilFreecess 这真是 new bing 回答的吗 要是真的 那也太牛逼了
    KevinBlandy
        40
    KevinBlandy  
       2023-05-06 15:51:29 +08:00
    给你推荐一个 spring 的中文文档吧。

    https://springdoc.cn/
    Goat121
        41
    Goat121  
       2023-05-07 16:25:54 +08:00
    @wangpugod2003 我有个朋友开个小公司专做政府项目的,好几年前就开始上 spring cloud
    我曾经好奇问他并发多少,他说内部系统用户一共就几十个,有个毛并发好谈
    完全就是为了吹得高大上一点,这边多拿钱,那边好交待
    chaleaochexist
        42
    chaleaochexist  
    OP
       2023-05-07 16:42:13 +08:00
    @Goat121 你是懂球的.
    bigjack
        43
    bigjack  
       2023-05-08 08:48:59 +08:00
    @twofox 咋就实现不了,之前老系统不能用了?别搁那扯淡了
    bigjack
        44
    bigjack  
       2023-05-08 08:49:59 +08:00
    @wolfie 你知道 Java 的 ssh 是啥吗?难道你只知道 linux 的连接工具 ssh ?
    wolfie
        45
    wolfie  
       2023-05-08 09:21:18 +08:00
    @bigjack
    上下文都理解不了,怪不得这么些年 ssh 、boot 、cloud 区别在哪里都不懂。
    yxisenx
        46
    yxisenx  
       2023-05-08 09:44:31 +08:00
    @bigjack 旧 ssh 项目重构的心态爆炸
    lizhian
        47
    lizhian  
       2023-05-08 09:49:56 +08:00   1
    你这么理解是没问题的
    bigjack
        48
    bigjack  
       2023-05-08 10:08:47 +08:00
    @wolfie 看不懂,哪有你懂,我是小白
    twofox
        49
    twofox  
       2023-05-08 10:27:25 +08:00
    你就用 ssh ,拿头实现?就只口嗨?
    wolfie
        50
    wolfie  
       2023-05-08 10:41:38 +08:00
    @bigjack
    不懂就老实看别人辩论,自己菜还一口一个垃圾 。
    bigjack
        51
    bigjack  
       2023-05-25 15:02:18 +08:00
    @wolfie 你是个傻逼吗?你爹比你懂
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2235 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 16:06 PVG 00:06 LAX 09:06 JFK 12:06
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86