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

news/2024/10/23 7:30:44/

微服务简介


就是将一个大的应用,拆分成多个小的模块,每个模块都有自己的功能和职责,每个模块可以
进行交互,这就是微服务对于微服务,业界没有严格统一的定义,但是作为“微服务”这名词的发明人,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


http://www.ppmy.cn/news/1152742.html

相关文章

Java架构师理解SAAS和多租户

目录 1 云服务的三种模式1.1 IaaS(基础设施即服务)1.2 PaaS(平台即服务)1.3 SaaS(软件即服务)1.4 区别与联系2 SaaS的概述2.1 Saas详解2.2 应用领域与行业前景2.3 Saas与传统软件对比3 多租户SaaS平台的数据库方案3.1 多租户是什么3.2 需求分析3.3 多租户的数据库方案分析…

【C++程序员必修第一课】C++基础课程-06:if 判断

1 本课主要内容: 逻辑判断的应用if 判断:if, if...else, if...else if...else 语句格式和实例代码 2 主要知识点: 思考一个问题 如果学生某科目的考试成绩达到95分以上,则可以评为A,类似这种场…

【JDK21】初体验

IDEA 2023.2.2已支持JDK21 Java 21发布,IntelliJ IDEA 2023.2.2已完美支持。 想要开发Java 21代码的开发者可以升级了! Java新特性 Java 9 - 21:新特性解读 虚拟线程 虚拟线程创建 (1)使用静态构建器方法 &#…

RK平台使用MP4视频做开机动画以及卡顿问题

rk平台android11以后系统都可以使用MP4格式的视频做开机动画,系统源码里面默认使用的是ts格式的视频,其实使用mp4的视频也是可以的。具体修改如下: diff --git a/frameworks/base/cmds/bootanimation/BootAnimation.cpp b/frameworks/base/cmds/bootanimation/BootAnimat…

GitLab使用步骤

GitLab使用步骤 1 注册用户 1 访问:http://10.0.0.203/users/sign_up地址 2 填入注册信息,注册成功,需要管理员审核 3 用root登录,地址:http://10.0.0.203/users/sign_in账号:root密码:xxxx…

使用实验室超声波清洗机有哪些注意事项?

常人很难想象实验室超声波清洗机肩负的重要职责,毕竟日常接触的机会甚少,无法知晓清洗机在实验室中扮演的角色,自然无从得知它在业内所处的地位。先进的实验室超声波清洗机总能让客户眼前一亮,毕竟技术的迭代意味着性能的升级&…

Zookeeper分布式一致性协议ZAB源码剖析

文章目录 1、ZAB协议介绍2、消息广播 1、ZAB协议介绍 ZAB 协议全称:Zookeeper Atomic Broadcast(Zookeeper 原子广播协议)。 Zookeeper 是一个为分布式应用提供高效且可靠的分布式协调服务。在解决分布式一致性方面,Zookeeper 并…

Linux中scp命令复制文件

scp命令是在Linux中用于在本地主机和远程主机之间进行安全传输文件的命令。下面是使用scp命令的语法: scp [参数] [来源路径] [目标路径]参数: -r:递归复制整个目录。-P:指定远程主机的端口。-p:保留原文件的修改时间…