微服务
微服务架构:是一种架构模式,将一个应用程序划分为一组小的服务,每个服务运行在自己单独的进程中,服务之间通过HTTP的restful API相互沟通,相互协作、相互配合,为用户提供最终服务。强调避免集中式、统一的服务管理机制。
微服务·:是一个个微小的服务,强调的是服务的大小,狭义地说就是idea中一个个的model。将一个应用程序拆分后的各个独立模块。
微服务就好比医院中一个个独立的科室,牙科、骨科、外科等。而这些独立的科室就构成了医院,这就是微服务架构。
1
为什么有微服务?
传统的开发,将一个应用程序放在一个项目里面,打成一个war包,所有的模块,例如:订单、商品、交易、库存等,都在一个项目里面,这种服务称为巨石服务。All in one
这种架构一旦某个模块出问题,整个项目就会受到影响,甚至崩溃
分布式: 将一个服务应用,拆分为各个模块/服务,将模块独立出来,单独开发。各自有各自微小的进程,让专业的人,专业的模块做专业的事,让分工更加明确。各个模块独立部署
这种架构,服务之间不会影响,哪个模块出问题,受影响的只有那个模块,其它模块仍然可以工作。
微服务的作用
去耦合,各自的服务模块可以拥有自己的数据库,通过springcloudconfig,进行配置共同协作,各个模块可以单独的启动和销毁,类似于进程的概念。
微服务的优缺点
优点: 微服务让分工更加明确,开发效率提高。松耦合,代码更容易理解,部署灵活,可以接纳新的技术,扩展性好。
缺点: 开发人员要理解分布式系统的复杂性,随着服务的增多,运维难度压力增大。微服务之间的通信成本,依赖部署,数据的一致性如何保证,庞大的应用如何集成测试,如何监控性能…
微服务技术栈
微服务技术栈: 多种技术的集合体。
我们在讨论一个分布式微服务的架构的话,它需要有哪些维度
一个分布式微服务的架构 E时代下的数字化生活
服务治理(Dubbo等) 手机(HUAWEI等)
服务注册(Zookeeper等) 电脑(lenovo等)
服务调用 路由器
服务负载均衡(nginx) 充电宝
服务监控 智能音箱
…… ……
SpringCloud 提供以上技术的集合 小米科技都可以提供以上服务
微服务技术栈有哪些 微服务框架案例:www.b123.com
微服务条目 落地技术 备注
服务开发 Springboot、Spring、SpringMVC
服务配置与管理 Netfix公司的Archaius、阿里的Diamond
服务注册与发现 Eureka、Consul、Zookeeper等
服务调用 Rest、RPC、gRPC(Google的)
服务熔断 Hystrix、Envoy等
负载均衡 Ribbon、Nginx等
服务接口调用(客户端调用服务的简化工具) Feign等
消息队列 Kafka、RabbitMQ、ActiveMQ等
服务配置中心管理 SpringCloudConfig、Chef等
服务路由(API网关) Zuui等
服务监控 Zabbix、Nagios、Metrics、Spectator等
全链路追踪 Zipkin、Brave、Dapper等
服务部署 Docker、OpenStack、Kubernetes等
数据流操作开发包 SpringCloud Stream(封装与Redis、Rabbit、Kafka等发送接收消息)
事件消息总线 SpringCloud Bus
–
为什么选SpringCloud,
与其它分布式微服务框架进行对比,它社区活跃度高,阿里的Dubbo已经五年没有维护了,现在HSF(High Speed Framework)
支持的微服务条目多
相关推荐
在提供的“springcloud学习示例代码”中,我们可以期待看到以下几个关键组件的示例: 1. **Eureka**:这是一个服务注册与发现的组件,允许微服务实例向中心注册,其他服务可以通过Eureka查找并调用这些服务。 2. *...
Google_K8S与阿里微服务Spring_Cloud_Alibaba三高架构实战
《微服务Spring Cloud Alibaba深度解析》 在当今的软件开发领域,微服务架构已经成为主流,它将大型的单体应用拆分成一组小型、独立的服务,每个服务都可以独立部署、扩展和更新,极大地提高了系统的可伸缩性和灵活...
本资源中的"微服务Springcloud应用相关组件使用示例"提供了对这些关键组件的实际操作演示,帮助开发者快速理解和应用。 首先,我们来看看Spring Cloud Config,这是一个用于配置管理的工具,允许你将配置存储在远程...
本资料“认识微服务springcloud.rar”是针对初学者的快速开发入门级文档,特别适合那些想要深入理解并应用Spring Cloud进行互联网开发的工程师。 首先,让我们来了解一下微服务架构的核心理念。微服务架构是一种将...
JAVA微服务Spring Cloud教程合集_极品.zip 7天学会spring cloud系列 Netflix Zuul与Nginx的性能对比 SpringCloud踩坑实战笔记 教程1 教程2 史上最简单的SpringCloud教程 Spring Cloud教程合集 spring cloud服务安全...
总结来说,"nacos mysql postgresql 微服务 spring cloud"这个主题涵盖了现代微服务架构中的多个重要元素。Nacos作为服务治理和配置管理的核心,MySQL和PostgreSQL提供了可靠的数据存储,而Spring Cloud则为微服务...
073 某D课堂 - 新版本微服务SpringCloud+Docker教程 video code.zip 35.5MB 9-05 微服务相关项目改造配置中心~1.mp4 353.6MB 9-04 高级篇幅消息总线整合配置中心架构流程图~1.mp4 246.0MB 9-03 实战系列使用...
2021年 最新java微服务 spring cloud 分布式金融实战项目教程
芋道微服务spring cloud 修改版本 jdk17/21可运行
新手学习微服务SpringCloud项目架构搭建方法 微服务架构是当前软件架构开发的热门趋势之一,而Spring Cloud正是微服务架构的优秀实现者。微服务架构的主要特点是将大型应用程序拆分成多个小型独立的服务,每个服务...
【微服务SpringCloud搭建与组件介绍】 微服务作为一种软件架构模式,由Martin Fowler在其博客中提出,旨在将大型复杂应用程序分解为一组小型、独立的服务,每个服务都能自我包含、独立部署,专注于完成特定业务功能...
073 某D课堂 - 新版本微服务SpringCloud+Docker教程 video code.zip 35.5MB 9-05 微服务相关项目改造配置中心~1.mp4 353.6MB 9-04 高级篇幅消息总线整合配置中心架构流程图~1.mp4 246.0MB 9-03 实战系列使用...
微服务SpringCloud笔记.md
【微服务SpringCloud+Eureka+Web】是一种基于Java的微服务架构实现,它结合了SpringCloud框架和Eureka服务注册与发现组件,并且利用Web技术进行应用开发。SpringCloud是Spring公司推出的微服务解决方案,旨在简化...
微服务SpringCloud全套P2P金融项目Java工程代码技术要点:注册中心:Apolo限流:Sentinel网关:Zuul链路追踪:Sleuth&Zipkin服务熔断:Hystrix远程调用:Feign
java微服务spring cloud教程3_棒.zip 1.spring boot 2.服务注册中心的搭建 3.微服务提供与调用 4.熔断器 5.在boot中使用jpa操作数据库 6.在boot中使用mybatis 7.mybatis多数据源 8.消息队列 9.Spring Cloud Bus 10....
读书笔记:实现一套Java的微服务Spring Cloud开发模板
除了Feign自带的注解外它还支持JAX-RS注解,SpringCloud又为Feign增加了对SpringMVC注解的支持,同时为了能够使用和Spring Web中默认使用的相同的httpMessageConverter,SpringCloud集成了Ribbon和Eureka,用来在...
单体架构vs微服务架构,dubbo与spring cloud对比,spring cloud整体架构,简单架构,eureka介绍,hystrix介绍, feign介绍,spring cloud config配置介绍,zuul配置中心介绍, spring cloud开发步骤,docker自动化...