Springcloud笔记(1)-微服务和springcloud介绍

微服务简介

就是将一个大的应用,拆分成多个小的模块,每个模块都有自己的功能和职责,每个模块可以

进行交互,这就是微服务对于微服务,业界没有严格统一的定义,但是作为"微服务"这名词的发明人,Martin Fowler对微服务的定义似乎更具有权威性和指导意义,他的理解如下:

简而言之,微服务架构的风格,就是将单一程序开发成一个微服务,每个微服务运行在自己的进程中,并使用轻量级通信机制,通常是HTTP RESTFUL API。这些服务围绕业务能力来划分构建的,并通过完全自动化部署机制来独立部署这些服务可以使用不同的编程语言,以及不同数据存储技术,以保证最低限度的集中式管理。

微服务是一个理念,不是专指springcloud。

微服务架构的常见解决方案

ServiceComb-华为

SpringCloud

SpringCloud Alibaba

微服务部署自动化

微服务架构的程序有多个服务,使得手动部署很复杂。

微服务一般采用CICD持续集成进行自动化部署。

Springcloud简介

Spring cloud是Java语言的微服务框架,它依赖于Spring Boot,有快速开发、持续交付和容易部署等特点。Spring cloud的组件非常多,涉及微服务的方方面面,井在开源社区Spring和Netfilx、Pivotal两大公司的推动下越来越完善,如今alibaba也加入到其中。

Spring Cloud在开发部署上继承了Spring Boot的一些优点,提高其在开发和部署上的效

率。Spring cloud的首要目标就是通过提供一系列开发组件和框架,帮助开发者迅速搭建

一个分布式的微服务系统。

Spring Cloud是通过包装其他技术框架来实现的,例如包装开源的Netflix×oss组件,实现了一套通过基于注解、Java配置和基于模版开发的微服务框架。

Spring cloud提供了开发分布式微服务系统的一些常用组件,例如服务注册和发现、配置中心、熔断器、远程调用,智能路由、微代理、控制总线、全局锁、分布式会话等。

Springcloud常用组件

有多个是因为spring、netflix、alibaba不同公司的

服务的注册和发现。(eureka,nacos,consul)

服务的负载均衡。(ribbon,dubbo)

服务的相互调用。(openFeign)

服务的容错。(hystrix,sentinel)

服务网关。(gateway,zuul)

服务配置的统一管理。(config-server,nacos,apollo)

服务消息总线。(bus)

服务安全组件。(security,Oauth2.0)

服务监控。(admin)(jvm)

链路追踪。(sleuth、zipkin、skywalking)

springcloud alibaba

SpringCloudAlibaba | Spring Cloud Alibaba (aliyun.com)

Spring Cloud Alibaba是一个基于Spring Boot和Spring Cloud的分布式微服务框架,用于构建高性能、高可用性的微服务应用程序。它提供了丰富的中间件和扩展组件,如Nacos、Sentinel、Dubbo、RocketMQ等,以及一些最佳实践和规范,帮助开发者快速搭建和扩展微服务架构。

Spring Cloud Alibaba的主要特点包括:

  1. 快速集成:Spring Cloud Alibaba可以快速集成到现有的Spring Boot项目中,只需添加相关依赖和配置即可。
  2. 丰富的中间件:Spring Cloud Alibaba提供了丰富的中间件和扩展组件,包括服务注册与发现(Nacos)、熔断器(Sentinel)、分布式事务(Seata)、分布式消息(RocketMQ)等。
  3. 微服务支持:Spring Cloud Alibaba支持多种微服务架构,包括Dubbo、Spring Cloud、gRPC等,可以灵活地根据项目需求选择合适的微服务框架。
  4. 高性能:Spring Cloud Alibaba基于Netty、Hessian等高性能框架,具备高并发、低延迟的特点。
  5. 最佳实践和规范:Spring Cloud Alibaba提供了大量的最佳实践和规范,帮助开发者更好地设计和开发微服务应用程序。

总之,Spring Cloud Alibaba是一个非常优秀的分布式微服务框架,适用于Java开发者构建高性能、高可用性的微服务应用程序。

总结

SpringCloud是微服务理念的一种具体落地实现方式,帮助微服务架构提供了必备的功能

目前开发中常用的落地实现有三种:

Dubbo+Zookeeper半自动化的微服务实现架构(别的管理没有)

SpringCloud Netflix一站式微服务架构

SpringCloud Alibaba新的一站式微服务架构

三大公司

Spring Netflix Alibaba

参考:动力节点SpringCloud实战视频教程|自学必备的springcloud+springcloudAlibaba教程_哔哩哔哩_bilibili

相关推荐
迢迢星万里灬12 小时前
Java求职者面试:微服务技术与源码原理深度解析
java·spring cloud·微服务·dubbo·netty·分布式系统
sg_knight14 小时前
Ribbon负载均衡实战指南:7种策略选择与生产避坑
java·spring boot·spring·spring cloud·微服务·ribbon·负载均衡
HGW68917 小时前
为什么已经有 Nginx 了,还需要服务网关?
nginx·spring cloud·微服务·架构
肥仔哥哥193019 小时前
最新SpringBoot+SpringCloud+Nacos微服务框架分享
spring boot·spring cloud·微服务·nacos微服务·最新nacos微服务
程序员Bears1 天前
Spring Cloud Hystrix熔断机制:构建高可用微服务的利器
spring cloud·hystrix·微服务
Chan162 天前
【 SpringCloud | 微服务 MQ基础 】
java·spring·spring cloud·微服务·云原生·rabbitmq
斯普信云原生组3 天前
Docker构建自定义的镜像
java·spring cloud·docker
a_157153249863 天前
SpringCloud学习笔记-4
笔记·学习·spring cloud
eternal__day4 天前
Spring Cloud 多机部署与负载均衡实战详解
java·spring boot·后端·spring cloud·负载均衡
记得开心一点嘛4 天前
使用MinIO搭建自己的分布式文件存储
分布式·spring cloud·minio