浅谈Springboot与Springcloud的区别

简介: 浅谈Springboot与Springcloud的区别

每天工作中都在用SpringBoot框架,当面试的时候被问到Springcloud的基本组件都有哪些的时候,我当时是蒙圈的状态,告诉大家在使用底层东西的时候基本的业务知识还是得掌握下,这样才能完美的使用。


SpringCloud是一个基于SpringBoot的实现云应用的开发工具,


SpringBoot专注于快速/方便集成单个个体,使用了默认大于配置的理念,很多集成方案已经帮你选择好了,能不配置就不配置。


SpringCloud专注全局的服务治理框架,很大一部分是基于SpringBoot来实现的。


我们来说下SpringCloud的组件有五种


1. 服务发现与注册,SpringCloud中常用的服务注册中心有Eureka和Nacos。服务注册中心负责服务的注册与发现。服务提供者在启动时向注册中心注册自己的服务信息,服务消费者通过服务名向注册中心咨询并获取所有的服务实例,从而实现服务的动态发现和调用。


2. 客户端负载均衡,SpringCloud Ribbon提供了客户端负载均衡的功能,它基于HTTP和TCP的客户端负载均衡工具。支持简单轮询,随机等多种负载均衡策略。


3. 熔断机制 SpringCloud Hystrix提供了断路器的功能,用于防止因单个服务的调用失败导致多个请求的阻塞或失败。断路器模式允许应用程序在检测到故障调用链,避免雪崩效应。同时也能在故障解决后尝试重新连接。


4. API网关,SpringCloud Gateway 是SpringCloud提供的API网关组件。用于同意处理微服务架构中的请求,Gateway可以提供请求的路由/过滤等功能,支持异步非阻塞处理。提高系统的吞吐量和相应速度。


5. 分布式配置管理 SpringCloud Config提供了分布式配置管理的功能,用于集中股那里微服务的配置信息,通过Config可以动态地更新服务配置,提供配置管理的灵活性和便利性。


SpringBoot 的核心注解


1 @SpringBootApplication 是一个组合注解,包含了@SpringBootConfiguration   @EnableAutoConfiguration   @Component三个注解 它通常放在主应用程序类上。

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}


2 @EnableAutoConfiguration 启用自动配置,SpringBoot 会尝试基于类路径设置/其他bean以及各种属性设置自动配置。


3 @RestController 是一个方便的注解,它是@Controller和@ResponseBody的组合,添加了RestController的类中方法返回的值通常被直接写入HTTp响应体中,是一种REST风格的控制器。


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
相关文章
|
10月前
|
负载均衡 Dubbo Java
Spring Cloud Alibaba与Spring Cloud区别和联系?
Spring Cloud Alibaba与Spring Cloud区别和联系?
|
11月前
|
Cloud Native Java Nacos
springcloud/springboot集成NACOS 做注册和配置中心以及nacos源码分析
通过本文,我们详细介绍了如何在 Spring Cloud 和 Spring Boot 中集成 Nacos 进行服务注册和配置管理,并对 Nacos 的源码进行了初步分析。Nacos 作为一个强大的服务注册和配置管理平台,为微服务架构提供
4347 14
|
11月前
|
前端开发 Java Nacos
🛡️Spring Boot 3 整合 Spring Cloud Gateway 工程实践
本文介绍了如何使用Spring Cloud Alibaba 2023.0.0.0技术栈构建微服务网关,以应对微服务架构中流量治理与安全管控的复杂性。通过一个包含鉴权服务、文件服务和主服务的项目,详细讲解了网关的整合与功能开发。首先,通过统一路由配置,将所有请求集中到网关进行管理;其次,实现了限流防刷功能,防止恶意刷接口;最后,添加了登录鉴权机制,确保用户身份验证。整个过程结合Nacos注册中心,确保服务注册与配置管理的高效性。通过这些实践,帮助开发者更好地理解和应用微服务网关。
1942 0
🛡️Spring Boot 3 整合 Spring Cloud Gateway 工程实践
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
769 5
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
924 37
|
Java 微服务 Spring
SpringBoot+Vue+Spring Cloud Alibaba 实现大型电商系统【分布式微服务实现】
文章介绍了如何利用Spring Cloud Alibaba快速构建大型电商系统的分布式微服务,包括服务限流降级等主要功能的实现,并通过注解和配置简化了Spring Cloud应用的接入和搭建过程。
SpringBoot+Vue+Spring Cloud Alibaba 实现大型电商系统【分布式微服务实现】
|
SpringCloudAlibaba API 开发者
新版-SpringCloud+SpringCloud Alibaba
新版-SpringCloud+SpringCloud Alibaba
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
定时任务在企业应用中至关重要,常用于异步数据处理、自动化运维等场景。在单体应用中,利用Java的`java.util.Timer`或Spring的`@Scheduled`即可轻松实现。然而,进入微服务架构后,任务可能因多节点并发执行而重复。Spring Cloud Alibaba为此发布了Scheduling模块,提供轻量级、高可用的分布式定时任务解决方案,支持防重复执行、分片运行等功能,并可通过`spring-cloud-starter-alibaba-schedulerx`快速集成。用户可选择基于阿里云SchedulerX托管服务或采用本地开源方案(如ShedLock)
407 1
|
11月前
|
人工智能 SpringCloudAlibaba 自然语言处理
SpringCloud Alibaba AI整合DeepSeek落地AI项目实战
在现代软件开发领域,微服务架构因其灵活性、可扩展性和模块化特性而受到广泛欢迎。微服务架构通过将大型应用程序拆分为多个小型、独立的服务,每个服务运行在其独立的进程中,服务与服务间通过轻量级通信机制(通常是HTTP API)进行通信。这种架构模式有助于提升系统的可维护性、可扩展性和开发效率。
3858 2
|
SpringCloudAlibaba 负载均衡 Dubbo
【SpringCloud Alibaba系列】Dubbo高级特性篇
本章我们介绍Dubbo的常用高级特性,包括序列化、地址缓存、超时与重试机制、多版本、负载均衡。集群容错、服务降级等。
1854 6
【SpringCloud Alibaba系列】Dubbo高级特性篇

热门文章

最新文章