微服务之架构技术选型与设计

author author     2023-03-23     486

关键词:

参考技术A

本文主要介绍了架构技术选型与设计-微服务选型,Spring cloud 实现采用的技术,希望对您的学习有所帮助。

架构技术选型与设计-DUBBODubbo,是阿里巴巴服务化治理的核心框架,并被广泛应用于阿里巴巴集团的各成员站点(阿里巴巴现在使用架构为HSF)。 于2012-10-24最后版本2.5.3成为最后一版本,由当当接手维护,命名为dubbox;2017年突然继续dubbo进行维护,最后更新版本时间为 2017-10-11 22:21

Dubbo 核心部件:Provider: 暴露服务的提供方。Consumer:调用远程服务的服务消费方。Registry: 服务注册中心和发现中心。Monitor: 统计服务和调用次数,调用时间监控中心。(dubbo的控制台页面中可以显示)Container:服务运行的容器。Dubbo服务集群-集群容错模式

架构技术选型与设计-微服务选型

架构技术选型与设计-DUBBO

架构技术选型与设计-DUBBO

架构技术选型与设计-微服务选型Spring Cloud,从命名我们就可以知道,它是Spring Source的产物,Spring社区的强大背书可以说是Java企业界最有影响力的组织了,除了Spring Source之外,还有Pivotal和Netfix是其强大的后盾与技术输出。其中Netflix开源的整套微服务架构套件是Spring Cloud的核心。如果拿Dubbo与Netflix套件做对比,前者在国内影响力较大,后者在国外影响力较大,在背景上可以打个平手;但是若要与Spring Cloud做对比,由于Spring Source的加入,在背书上,Spring Cloud略胜一筹,但是在高并发上dubbo曾经在阿里的运营中实际承载过过亿用户同时在线的,而Netflix 并没有实际的上线应用中体现过。Spring Cloud下面有19个子项目(可能还会新增)分别覆盖了微服务架构下的方方面面,服务治理只是其中的一个方面,一定程度来说,Dubbo只是Spring Cloud Netflix中的一个子集。但是在选择框架上,方案完整度恰恰是一个需要重点关注的内容,当然从高可用和高并发一起考虑,Spring Cloud 无疑是最佳选择。

1、Spring Cloud Config 配置中心,利用git集中管理程序的配置。

2、Spring Cloud Netflix 集成众多Netflix的开源软件

3、Spring Cloud Bus 消息总线,利用分布式消息将服务和服务实例连接在一起,用于在一个集群中传播状态的变化

4、Spring Cloud for Cloud Foundry 利用Pivotal Cloudfoundry集成你的应用程序

5、Spring Cloud Cloud Foundry Service Broker 为建立管理云托管服务的服务代理提供了一个起点。

6、Spring Cloud Cluster 基于Zookeeper, Redis, Hazelcast, Consul实现的领导选举和平民状态模式的抽象和实现。

7、Spring Cloud Consul 基于Hashicorp Consul实现的服务发现和配置管理。

8、Spring Cloud Security 在Zuul代理中为OAuth2 rest客户端和认证头转发提供负载均衡

9、Spring Cloud Sleuth SpringCloud应用的分布式追踪系统,和Zipkin,HTrace,ELK兼容。

10、Spring Cloud Data Flow 一个云本地程序和操作模型,组成数据微服务在一个结构化的平台上。

11、Spring Cloud Stream 基于Redis,Rabbit,Kafka实现的消息微服务,简单声明模型用以在Spring Cloud应用中收发消息。

12、Spring Cloud Stream App Starters 基于Spring Boot为外部系统提供spring的集成

14、Spring Cloud Task App Starters

15、Spring Cloud Zookeeper 服务发现和配置管理基于Apache Zookeeper。

16、Spring Cloud for Amazon Web Services 快速和亚马逊网络服务集成。

17、Spring Cloud Connectors 便于PaaS应用在各种平台上连接到后端像数据库和消息经纪服务。

18、Spring Cloud Starters (项目已经终止并且在Angel.SR2后的版本和其他项目合并

)19、Spring Cloud CLI 插件用Groovy快速的创建Spring Cloud组件应用。Spring Cloud共集成了19个子项目,里面都包含一个或者多个第三方的组件或者框架!

1、spring cloud : 一个云应用工具,为云应用开发的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁定、决策竞选、分布式会话和集群状态管理等操作

2、spring cloud config :配置管理开发工具包

3、 spring cloud Bus :事件消息总线用于集群(例如:配置变化时间)中传播状态变化,与spring cloud config 联合实现热部署

4、 spring cloud Netflix Eureka : 云端负载均衡基础,一个基于Rest的服务,用于定位服务,以实现云端的负载均衡和中间层服务器的故障转移

5、 spring cloud Netflix Hystrix : 容错管理工具,旨在通过控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力

6 、 Netflix ZUUL: 边缘服务工具,提供动态路由、监控、弹性、安全等边缘服务

7、 spring cloud sleuth :日志收集工具包、封装Purpose 、Zipkin和Trace

8、 Spring Cloud Security : 安全工具包,为应用程序添加安全控制,主要是OAuth2

9、 spring cloud turbine :聚合服务器发送时间流,监控集群下Netflix 和 metrics 情况

Spring cloud 配置中心

Spring cloud 注册中心

Spring cloud 网关: 服务路由、安全认证、会话共享、客户端负载均衡、统一异常处理、跨域请求

Spring cloud 断路由

aibabelx-shop大型微服务架构系列实战之技术选型

...项目涉及编程语言java,scala,python,涉及的技术如下:1.微服务架构:springbootspringcloudmybatisplusshiro2.全文检索技术solr3.日志系统技术elk4.消息中间件kafka5.数据库技术mysqlredismongoDBmycat6.缓存技术redismemcache7.大数据系列技术hadoophbasehivefl... 查看详情

微服务架构案例(05):springcloud基础组件应用设计

...3:数据库选型,业务数据设计规划04:中间件集成,公共服务管理05:SpringCloud基础组件应用设计一、组件应用规划1、注册中心Eureka组件是Netflix开发的,用于定位服务,基于RESTFul方式实现服务注册与发现。包括一个EurekaServ 查看详情

微服务-架构选型记录2022年微服务技术架构选型

...话,在java领域里面躲不过去的alibaba,所以本次微服务架构选型还是基于SpringCloudAlibaba做为基础。在SpringCloud众多的实现方案中,SpringCloudAlibaba凭借其支持组件最多,方案最完善,在SpringCloud生态家族中扮演了... 查看详情

微服务架构技术栈选型手册¶

微服务架构技术栈选型手册2014~2018,微服务经过三年的发展,现状如何?这是一份为让你更好使用微服务的技术站选型手册。除此之外,你还可以按需选用配套的微服务架构视频内容。一、前言2014年可以认为是微服务1.0的元年... 查看详情

微服务架构案例(01):项目技术选型简介,架构图解说明(代码片段)

...伸缩。稳定性差,任何微小的问题,都可能导致整个应用服务直接挂掉。二、微服务架构微服务架构是一种架构概念,核心思想在于通过将业务功能和需求分解到各个不同的服务中进行管理,实现对业务整体解耦。围绕业务模式... 查看详情

微服务架构案例(01):项目技术选型简介,架构图解说明(代码片段)

...伸缩。稳定性差,任何微小的问题,都可能导致整个应用服务直接挂掉。二、微服务架构微服务架构是一种架构概念,核心思想在于通过将业务功能和需求分解到各个不同的服务中进行管理,实现对业务整体解耦。围绕业务模式... 查看详情

4面技术5面hr附加笔试面,牛皮轰轰

微服务架构第1章 微服务概述什么是微服务常见的微服务组件常用的微服务框架微服务架构设计模式如何实施微服务从微服务的起源和现实业务的角度探讨微服务第2章 微服务设计原则设计原则之分层架构设计原则之统一通信... 查看详情

javaweb架构演进与技术思考

...vlet架构3.2Struts1.x架构3.3SpringMVC架构3.4J2EE架构3.5SpringBoot微服务架构3.6以上架构的优缺点对比五、微服务架构的特点和优势4.1什么是微服务4.2微服务架构的优势4.3微服务架构的特点和限制六、基于SpringBoot的微服务架构实现5.1SpringBo... 查看详情

架构设计之「微服务入门」

微服务这几年不可谓不火,很多技术团队都开始在自己的项目上引入了微服务。一方面这些团队确实很好的推动了微服务的应用和发展,另一方面也可以看到一些盲目追技术热点的行为所带来的危害,比如很多中小团队对微服务... 查看详情

java开发入门教程!java研发工程师技术要求

微服务架构第1章 微服务概述什么是微服务常见的微服务组件常用的微服务框架微服务架构设计模式如何实施微服务从微服务的起源和现实业务的角度探讨微服务第2章 微服务设计原则设计原则之分层架构设计原则之统一通信... 查看详情

springboot微服务搭建指南架构设计

前言本系列将介绍如果从零构建一套分布式系统。同时也是对自己过去工作的一个梳理过程。本文先整理出构建系统的主要技术选型,以及技术框架。其实在形成如下框架前,我参考了许多资料和结构,也结合中小型公司的时间... 查看详情

常用rpc框架及如何设计一个rpc框架

参考技术A上一篇<<<微服务架构与SOA面向服务架构的区别下一篇>>>SpringCloud与SpringCloudAlibaba的区别推荐阅读:<<<架构演变之单体架构<<<架构演变之分布式架构<<<架构演变之面向服务架构(SOA)<<&l... 查看详情

微服务架构技术选型

微服务架构技术选型SpringCloud本身其实只是一套微服务规范,并不是一个拿来即可用的框架,SpringCloudNetflix和SpringCloudAlibaba是为开发者提供了这套规范的实现方式。由于SpringCloudNetflix2018年12月12日进入维护模式(Maintena... 查看详情

微服务架构设计基础之领域驱动设计(代码片段)

DDD早于微服务「出道」十年,这两个「忘年交」的软件设计哲学是如何相爱相杀的?背景微服务现在可以说是软件研发领域无人不提的话题,然而业界流行的对比多数都是所谓的Monolithic(单体应用),而大量的系统在十几年前都已... 查看详情

springcloud微服务云架构构建b2b2c电子商务平台之-企业分布式微服务云架构构建

今天正式给大家介绍了SpringCloud-企业分布式微服务云架构构建,我这边结合了当前大部分企业的通用需求,包括技术的选型比较严格、苛刻,不仅要用业界最流行的技术,还要和国际接轨,在未来的5~10年内不能out。作为公司的... 查看详情

前后端分离微服务架构如何设计

参考技术A前端前端开发人员专注业务的页面呈现,非常注重用户体验度,也是与各种角色打交道最多的。比如:一般前端工作包括六个部分:后端如果前后端职责划分很清楚的话,后端更多开发工作在于业务接口设计、业务逻... 查看详情

t31训练营笔记技术架构选型

...为什么要进行技术选型降低开发成本、提高研发效率1.2微服务架构的产生(1)第一代单体应用,所有模块打包到一起部署运行。特点:不可靠、单维扩展、不可持续发展。(2)SOA,面向服务架构,... 查看详情

微服务中的springcloud和springcloudalibaba分别有哪些组件和作用,众多组件中如何做技术选型?

随着互联网、物联网的广泛应用,高并发应用程序在数量与体量上都在以指数级提高,传统的单体应用、SOA等架构已经不足以支撑新环境对应用性能与可靠性的要求。此时微服务架构开始闪亮登场了 查看详情