【java】springboot和springcloud区别
创始人
2024-05-25 18:51:30
0

文章目录

  • 1、含义不同
  • 2、作用不同
  • 3、使用方式不同
  • 4、特征不同
  • 5、注释不同
  • 6、优势不同
  • 7、组件不同
  • 8、设计目的不同

1、含义不同

springboot:一个快速开发框架,它简化了传统MVC的XML配置,使配置变得更加方便、简洁。

springcloud:是建立在SpringBoot上的服务框架,进一步简化了配置,它整合了一全套简单、便捷且通俗易用的框架。

2、作用不同

springboot:为了提供一个默认配置,从而简化配置过程。

springcloud:为了给微服务提供一个综合管理框架。

3、使用方式不同

springboot:可以单独使用。

springcloud:springcloud必须在springboot使用的前提下才能使用。

4、特征不同

springboot:

  • spring应用:通过调用静态 run() 方法创建独立的 Spring 应用程序。
  • Web应用程序:我们可以使用嵌入式Tomcat,Jetty或Undertow创建HTTP服务器。无需部署 WAR 文件。
  • 外化配置:弹簧启动也提供基于产品的应用程序。它在不同的环境中也同样有效。
  • 安全性:它是安全的,内置于所有HTTP端点的基本身份验证中。
  • 应用程序事件和监听器:Spring Boot必须处理许多任务,应用程序所需的事件。添加用于创建工厂文件的侦听器。

springcloud:

  • 智能路由和服务发现:在创建微服务时,有四个服务很重要。服务发现就是其中之一。这些服务相互依赖。
  • 服务到服务调用:要连接所有具有序列的从属服务,请注册以调用终端节点。
  • 负载均衡:将网络流量适当分配到后端服务器。
  • 领导选举:应用程序作为第三方系统与另一个应用程序一起使用。
  • 全局锁定:两个线程不能同时访问同一资源。
  • 分布式配置和分布式消息传递

5、注释不同

springboot:

  • @SpringBootApplication:此注释可以找到每个spring引导应用程序。它由三个注释组成:- @EnableAutoConfiguration;@Configuration;@ComponentScan。它允许执行Web应用程序而无需部署到任何Web服务器中。
  • @EnableAutoConfiguration:要么您使用的是低于1.1的spring boot版本,要么是@SpringBootApplication没有使用,那么需要此注释。
  • @ContextConfiguration:JUnit测试需要它。spring-boot 应用程序需要单元测试来测试其中的服务类。它加载SpringBoot上下文,但未提供完整的SpringBoot处理。
  • @SpringApplicationConfiguration:它具有相同的工作@ContextConfiguration但提供完整的springboot处理。它加载 Bean 以及启用日志记录并从 application.properties 文件
    加载属性。@ConditionalOnBoot:它定义了几个条件注释:@ConditionalOnMissingBoot;@ConditionalOnClass;- - - @ConditionalOnMissingClass;@ConditionalOnExpression;@ConditionalOnJav。

springcloud:Spring Cloud主要遵循5个主要注释:

  • @EnableConfigServer:此注释将应用程序转换为服务器,该服务器更多地用于应用程序以获取其配置。
  • @EnableEurekaServer:用于 Eureka Discovery Services 的此注释可用于查找使用它的服务。
  • @EnableDiscoveryClient:帮助此注释应用程序在服务发现中注册,发现使用它的其他服务。
  • @EnableCircuitBreaker:使用断路器模式在相关服务发生故障时继续运行,防止级联故障。此注释主要用于 Hystrix 断路器。
  • @HystrixCommand(回退方法=“ fallbackMethodName”):用于标记回退到另一种方法的方法,它们无法正常成功。

6、优势不同

springboot:

  • 快速开发和运行独立的弹簧Web应用程序。
  • 默认情况下,它在需要时配置Spring功能。它的豆子被初始化并自动连接。
  • 它不需要基于 XML 的配置。直接嵌入Tomcat,Jetty以避免复杂的部署。
  • 没有必要部署 WAR 文件。

springcloud:

  • 提供云服务开发。
  • 它是基于微服务的架构来配置。
  • 它提供服务间通信。
  • it 基于Spring Boot模型。

7、组件不同

springboot:spring启动启动器,spring启动自动配置,spring启动执行器,spring启动 CLI,spring启动初始化。

springcloud:配置、服务发现、断路器、路由和消息传递、API 网关、跟踪、CI 管道和测试。

8、设计目的不同

springboot:springboot的设计目的是为了在微服务开发过程中可以简化配置文件,提高工作效率。

springcloud:springcloud的设计目的是为了管理同一项目中的各项微服务,因此二者是完全不同的两个软件开发框架。

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...