微服务架构与SpringCloud

微服务架构简述

通常而言,微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行在其独立的自己的进程中,服务之间互相协调、互相配合为用户提供最终价值。服务之间采用轻量级的通信机制互相沟通(通常是基于HTTP的Restful API) 每个服务否围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建,可以有一个非常轻量级的集中式管理来协调这些服务,可以使用不同的语言来编写服务,也可以选择不同的数据存储。

微服务化的核心就是将传统的一站式应用,根据业务拆分为一个一个的服务,彻底地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事,从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行单独启动或销毁,甚至可以拥有自己独立的数据库。

分布式系统,各个模块分出多个系统服务,各自拥有一个进程,独立部署

微服务

微服务强调的是服务的大小,它关注的是某一个点,是具体解决某一个问题/提供落地对应服务的一个服务应用,狭义的看,可以看做Eclipse 里面的一个微服务工程或者Module

微服务架构的优缺点

优点:

  • 每个服务足够内聚,足够小,代码容易理解这样能聚焦一个指定的业务功能或者业务需求
  • 开发简单、开发效率提高,一个服务可能就是专一的只干一件事
  • 微服务能够被小团队单独开发,这个小团队是2到5人
  • 微服务架构是松耦合的,是有功能意义的服务,无论是在开发阶段或部署阶段都是独立的
  • 微服务是使用不同的语言开发
  • 微服务易于和第三方集成,允许容易且灵活的方式集成自动部署,通过持续集成工具,如:Jenkins、Hudson、Bamboo
  • 微服务易于被一个开发人员理解、维护
  • 微服务只是业务逻辑的代码,不会和Html和css 或其他页面组件混合。

缺点:

  • 开发人员要处理分布式系统的复杂
  • 多服务运维难度随着服务的增加,运维的压力也在增加
  • 系统部署的依赖
  • 服务间通信成本
  • 数据的一致性
  • 系统集成测试
  • 性能监控

微服务落地技术

微服务落地技术
微服务落地技术

各微服务架构对比

各微服务架构对比

SpringCloud

SpringCloud,基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。

SpringCloud利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施的开发,SpringCloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等,它们都可以用SpringBoot的开发风格做到一键启动和部署。

SpringBoot并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过SpringBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包

SpringCloud 组件

可参考SpringCloud 中文文档传送门查看SpringCloud 生态圈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/556311.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

REST和RPC是什么东东?两者有什么区别

1 REST与RPC概念 什么是REST REST是一种架构风格,指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。REST规范把所有内容都视为资源,网络上一切皆资源。 REST并没有创造新的技术,组件或服务&#xff0c…

简述计算机进行远程桌面管理操作过程,服务器应用之“远程桌面连接”(操作篇)...

在上篇《服务器应用之“远程桌面连接”(部署篇) 》《服务器应用之“远程桌面连接”(建立篇) 》,我们介绍了远程桌面的部署和建立方法。在远程桌面连接成功后就可以进行一些远程桌面连接可以进行的计算机管理了。具体可以进行的远程桌面连接操作如下:1. 使…

未为dll加载任何符号_专家发现aspersky 和Trend Micro安全性解决方案中的DLL劫持问题...

SafeBreach的研究人员发现了Kaspersky安全连接、Trend Micro最大安全性和Autodesk桌面应用程序中的几个DLL劫持漏洞,黑客可以利用这些漏洞进行DLL预加载、代码执行和权限升级。第一个问题在卡巴斯基安全连接(KSDE) VPN客户端,跟踪为CVE-2019-15689&#…

什么是Eureka? 单机版Eureka如何使用?

Eureka 是什么? Eureka 是Spring Cloud的服务治理组件,有三个核心角色: 服务注册中心、服务提供者、服务消费者。Eureka 主管服务注册中心。 是Netflix的一个子模块,也是核心模块之一。Eureka是一个基于REST的服务,用…

ntko跨浏览器插件_继泄露版后,微软全新 Chrome 内核 Edge 浏览器你都测试过了吗?...

尽管微软的 Office 和 Windows 10 势头不错,但像 WP 手机、XBox 等方面似乎并未获得预期的成功。而先前为了替代老旧的 IE 浏览器,微软倾力开发的 Edge 也未见起色。不过微软也一直在努力变得更加开放,比如发布 VS for Mac、Office for Mac、…

如何将单机版的Eureka服务改为集群版Eureka服务

Eureka 集群原理 基本原理 上图是来自eureka的官方架构图,这是基于集群配置的eureka; 处于不同节点的eureka通过Replicate进行数据同步Application Service为服务提供者Application Client为服务消费者Make Remote Call完成一次服务调用 服务启动后向…

台式计算机读不到u盘怎么回事,电脑读不出u盘怎么办

把U盘插入电脑USB接口中,却发现找不到U盘图标,甚至连安装U盘驱动的提示也没有,那么电脑读不出u盘怎么办呢?天学习啦小编就和大家说说电脑读不出u盘的解决方法。电脑读不出u盘解决方法1、首先应该排除是否是由于电脑系统问题,具体…

Eureka 与Zookeeper 的区别,Eureka相较于Zookeeper好在哪?

传统的ACID A(Atomicity) 原子性C(Consistency) 一致性I (Isolation)独立性D(Durability)持久性 关系型数据库(MySQL,Oracle,SqlServer&#xf…

如何将Springboot项目成功部署到linux服务器上?

springboot的jar包方式 idea默认就是jar打包方式所以直接使用maven工具按照步骤点击就可以直接打包ps:打包前你的数据库相关的连接信息要记得修改,不能再用本地的了 第二步:Maven clean :清除编译后的目录,默认是target目录 [IN…

2018年3月计算机二级考试题,2018年3月计算机二级考试Access综合试题十

2018年3月计算机等级考试即将开始,小编在这里为考生们整理了2018年3月计算机二级考试Access综合试题,希望能帮到大家,想了解更多资讯,请关注出国留学网的及时更新哦。2018年3月计算机二级考试Access综合试题十(1)要将“选课成绩”…

sqldataadapter.fill 索引超出了数组界限_小学生学习C++||第十五节 数组

存储数据的方式第一种,变量:存放1个学生的数学成绩可以定义1个变量存放,那么如果想要存放100个学生的数学成绩应该如何存储呢?第二种,数组:引入数组概念:可以用来表达类型相同的元素的集合&…

数据字典在sga的哪一个组件中缓存_【赵强老师】Oracle数据库的内存结构

首先,我们通过一张图片来了解一下Oracle数据库的内存结构,如下:每个数据库实例有两个关联的内存结构—系统全局区(SGA),程序全局区(PGA)。系统全局(SGA):一组共享的内存结构(称为SGA 组件),其中包含一个OracleDB 实例的…

计算机黑屏策略,小黑w7系统诊断策略服务已被禁用的还原教程

小黑w7家庭版开机速度快,是入门级小黑w7系统。据调查不少用户在使用中都碰到了诊断策略服务已被禁用的问题。面对小黑w7系统诊断策略服务已被禁用这样的小问题,我们该如何解决呢?不经常使用电脑的朋友对于小黑w7系统诊断策略服务已被禁用的问…

overline css,CSS text-decoration-line 属性

定义和用法text-decoration-line 属性规定文本修饰要使用的线条类型。注意:您也可以使用 text-decoration 属性设置 text-decoration-line。text-decoration 属性是 text-decoration-line、text-decoration-style 和 text-decoration-color 属性的速记属性。注意&am…

npoi word在试图打开文件时遇到错误_【技巧】word在试图打开文件时遇到错误

问题使用Word的时候遇到了一个问题,如下图所示解决方案情况一:修改文件后缀导致打开错误如果源文件不是“.doc”或者“.docx”格式结尾,通过修改文件后缀的方式修改为“.doc”或者“.docx”格式。在打开文件的时候出现上述警告时,…

空间服务器有问题是系统问题吗,服务器空间租用两个主要问题要留意

只要是建设网站,那么服务器空间租用都是不能缺少的。而且这样的一种租赁模式都是长期的,所以我们需要考虑到租用的整体性价比,这样后续的应用才能有所保障。而且我们只要是建设了网站,服务器和空间一般都是不会更换掉的&#xff0…

面试让HR都能听懂的MySQL锁机制,欢声笑语中搞懂MySQL锁

腾讯云数据库负责人林晓斌说过:“我们面试MySQL同事时只考察两点,索引和锁”。言简意赅,MySQL锁的重要性不言而喻。 本文通过同事“侨总”的一场面试,带你通俗易懂的掌握MySQL各种锁机制,希望可以帮到你!近…

MySQL锁机制,行锁jingran加在索引上

锁概述 锁是计算机协调多个进程或线程并发访问某一资源的机制,应该都不陌生。?但在这之前我们先来看看并发控制,理清MVCC多版本并发控制和锁的关系,这也是之前我很迷惑的一个点 并发控制技术 在数据库中,数据可以允许多个用户…

闲置服务器 虚拟服务器,闲置主机搭建服务器

闲置主机搭建服务器 内容精选换一换安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器。例如QQ.exe。在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器。例如QQ.exe。本地磁盘映射(推荐使用…

浏览器接收响应数据过大_交互响应性能之优化FID

由于 FID 需要一个真实用户的交互,所以无法用实验数据测试。为了在实验数据下预测 FID,通常会用 TBT(Total Blocking Time),具体这个指标后面文章会介绍。他们测量的内容不同,但改善 TBT 通常也能改善 FID。一个糟糕的 FID 主要原…