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

作者&投稿:别关 (若有异议请与网页底部的电邮联系)
~

本文主要介绍了架构技术选型与设计-微服务选型,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 断路由




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

数据库架构选型与落地,看这篇就够了
虽然把上面的架构全部组合在一起可以形成一个强大的高可用,高负载的数据库系统,但是架构选择合适才是最重要的。 混合架构虽然能够解决所有的场景的问题,但是也会面临更多的挑战,你以为的完美架构,背后其实有着更多的坑。 1、对事务支持 分库分表后(无论是垂直还是水平拆分),就成了分布式事务了,如果依赖数据库本身...

.NET企业级应用架构设计之技术选型
这里说的技术选型实际上是指技术方向的选择 或者叫平台方案的选择 也或者叫技术路线等 总之是大方向的把握 假定项目背景是要做一个中型WEB系统 公司组建新的技术团队以及运营团队来运作 基于这个模糊的项目背景 看看我们能得到些什么 首先我们想到的是目标系统的特征 A) 稳定性及可服务性 这是对软件系统...

微服务改造—架构设计
在技术选型上也是各有不同,一般选择相对熟悉并且把握比较大框架。每个系统在架构设计上也各有不同,最近建设的几个系统基本都是采用了微服务设计模式,也有采用SOA架构的,也有仅仅是做了前后分离设计的系统,完全是单体结构的项目也有存在。 虽然我们开始对系统建设有一定的规划,但是随着业务的快速野蛮发展,一味地追求快,...

通用技术设计内容及评价报告
一、通用技术设计内容 1.技术选型 在技术选型方面,我们主要考虑了成熟性、稳定性、可扩展性、安全性等因素,以确保所选技术能够满足项目的长远发展需求。具体技术选型如下:(1)前端:React、Vue、Angular等前端框架,HTML5、CSS3等前端技术;(2)后端:Java、Python、Node.js等后端语言,MySQL、MongoDB等...

什么是微服务架构?主流的微服务如何实现?
1、SpringCloud Spring Cloud , 来自Spring,具有Spring 社区的强大支撑,还有Netflix强大的后盾与技术输出。Netflix作为一家成功实践微服务架构的互联网公司在几年前就把几乎整个微服务框架栈开源贡献给了社区,这些框架开源的整套服务架构套件是Spring Cloud的核心。- Eureka:服务注册发现框架;- Zuul:服务...

eHR系统技术架构如何选择?
例如,宏景世纪、金益康等;但一些后期进入的厂商一般就直接选择了B\/S技术,例如,万古、奇正等。 目前,市场上主流的eHR系统采用的技术架构主要有三种模式:C\/S、B\/S、C\/S+B\/S。基于Web的B\/S方式其实也是一种客户机\/服务器方式,只不过它的客户端是浏览器,为了区别于传统的C\/S模式,才特意将其称为B\/S模式。

前后端分离微服务架构如何设计
技术选型 最好选择成熟稳定,易上手、开发效率高的技术,因为实际项目开发时间是有限的,开发人员没有多少精力放在学习和深度研究技术上。数据格式 后端开发提供接口设计文档,详细写明每个接口的请求地址、请求参数、响应参数等等;一般采用 REST 风格以 JSON 格式提供数据。接口设计 一个接口...

技术选型 - OLAP大数据技术哪家强?
Hawq是一个Hadoop原生大规模并行SQL分析引擎,Hawq采用 MPP 架构,改进了针对 Hadoop 的基于成本的查询优化器。除了能高效处理本身的内部数据,还可通过 PXF 访问 HDFS、Hive、HBase、JSON 等外部数据源。HAWQ全面兼容 SQL 标准,还可用 SQL 完成简单的数据挖掘和机器学习。无论是功能特性,还是性能表现,...

聊聊软件架构设计
非功能性架构设计则涉及软件的分层设计、技术选型、动态决策(如进程管理、缓存策略)以及部署策略。例如,单体应用与微服务架构的差异在于单体应用强调模块化,而微服务则通过领域服务和应用服务层的松耦合设计,实现服务之间的独立和解耦。单体应用与微服务的对比 - 单体应用通常采用四层结构,包括存储、应用...

大方县13615145207: 微服务之架构技术选型与设计 -
樊霭捷赐: 本文主要介绍了架构技术选型与设计-微服务选型,Spring cloud 实现采用的技术,希望对您的学习有所帮助. 架构技术选型与设计-DUBBODubbo,是阿里巴巴服务化治理的核心框架,并被广泛应...

大方县13615145207: 六种常用的微服务架构设计模式(建议收藏) -
樊霭捷赐: 简单地说,API主导的连接方法可以被看作是API设计的一种分层方法(至少在本文中是这样).其中,系统API公开系统的资产数据信息;中间的是流程API,与系统API一起进行编排...

大方县13615145207: 微服务改造—架构设计 -
樊霭捷赐: 博客原文 至于为什么构建微服务架构的系统设计, 如何构建微服务架构 ,这些问题有很多文章介绍,我自己也有一篇文章介绍相关话题,感兴趣的同学...

大方县13615145207: 前后端分离微服务架构如何设计 -
樊霭捷赐: 前端开发人员专注业务的页面呈现,非常注重用户体验度,也是与各种角色打交道最多的. 比如: 一般前端工作包括六个部分: 后端 如果前后端职责划分很清...

大方县13615145207: 微服务架构有哪几种常用的设计模式 -
樊霭捷赐: 自治是微服务的设计原则之一,就是说微服务是全栈式服务.但在重构现有的“单体应用(monolithic application)”时,SQL数据库反规范化可能会导致数据重复和不一致.因此,在单体应用到微服务架构的过渡阶段,可以使用这种设计模式,

大方县13615145207: 前端微服务设计 -
樊霭捷赐: 近些年,前端发展呈百家争鸣式发展,框架层出不穷,版本更是迭代不穷,难免会出现前端项目技术栈不统一、所用框架版本不统一的情况. 如若某些项目,没有新的功能加入,又能线上稳定运行,但其技术...

大方县13615145207: 什么样的系统适合采用微服务架构 -
樊霭捷赐: REST (REpresentation State Transfer) 描述了一个架构样式的网络系统,比如 web 应用程序.它首次出现在 2000 年 Roy Fielding 的博士论文中,他是 HTTP 规范的主要编写者之一.REST 指的是一组架构约束条件和原则.满足这些约束条件和...

大方县13615145207: 微服务架构 如何影响传统的软件架构设计 -
樊霭捷赐: ThoughtWorks首席咨询师王磊通过一个互联网门户案例为大家解释了微服务架构的概念,以及它如何影响传统的软件架构设计.一年前,该门户每签一个10万的合同所耗费的成本是3.5天.他们当时的CRM结构是典型的三层架构,整个应用程序...

大方县13615145207: 网站结构该怎么去优化 关于当当网架构优化的几点心得 -
樊霭捷赐: 第一点:用户体验.这是seo的重点,因为如果一个用户体验都不良好的网站,搜索引擎也不会认为这是一个好的网站,搜索引擎的排名算法有很大程度的去考虑用户体验的.所以建设一个网站要让用户访问到我们的网站中能够很清楚的自己在...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网