Spring Cloud微服务笔记(一)微服务概念
微服务概念
一、什么是微服务架构
微服务,是一个小的、松耦合的分布式服务。
为什么需要微服务:
1)单体系统部署在一个进程中,修改了一个小功能,为了部署上线就会影响其他功能。
2)单体应用各个功能模块的使用场景、并发量、消耗资源类型各不相同,对于资源的利用又互相影响,
这样使得对各个模块的系统容量很难给出较为准确的评估。
微服务是系统架构的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个在各自独立进程中运行的小型服务,
服务之间通过基于HTTP的RESTful API进行通信协作。
二、实施微服务的挑战
实施微服务需要信奉的重要概念是:分解和分离应用程序的功能,使他们完全彼此独立。
1.单体应用拆分为分布式系统后,进程间的通信机制和和故障处理措施变得更加复杂。
---解决方案:RPC框架,如HSF、Dubbo可以支持多种通信协议,Spring Cloud可以非常好地支持RESTful调用
2.服务调用的分布式事务问题变得异常突出。
---解决方案:没有通用的解决方案,最具挑战的技术难题。
3.微服务数量众多,其测试、运维变得更加困难。
---运用Docker、Devops技术及共有云PAAS平台自动化运维工具。
三、微服务架构特性
一)服务组件化
组件,是一个可独立更换和升级的单元。
二)按业务组织团队
优势:一是可以服务内部修改产生的内耗,二是团队边界更加清晰。
三)做“产品”的态度
四)去中心化治理
当我们采用集中化架构治理方案时,通常在技术平台上都会制定统一的标准,但是每种
技术平台都有其短板,如果解决不好,很可能称为系统瓶颈。微服务构架系统中的各个
组件可以针对不同业务选择不同的技术平台。
五)去中心化数据管理
概念:让每个服务管理自由的数据库。
优势:让数据管理更加细致化,通过采用更合适的技术让数据存储和性能达到最优。
劣势:数据一致性问题。
六)基础设施自动化
微服务架构中需要运维人员关注的问题成倍增长,所以,务必从一开始就构建起"持续交付"
平台来支撑整个实施过程,该平台需要:
1)自动化测试
2)自动化部署
七)容错设计
八)演进式设计
Spring Cloud微服务笔记(一)微服务概念的更多相关文章
- spring cloud(学习笔记)微服务启动错误(1)
今天下午在启动spring cloud微服务的时候,报了这个错误: Error starting ApplicationContext. To display the auto-configurati ...
- spring cloud(学习笔记) Enreka服务治理
服务治理是微服务架构最为核心和基础的模块,主要用来实现各个微服务实例的自动化注册和发现. 记录一下服务注册中心的搭建以及高可用注册中心的实现 1.首先创建两个基础 的spring boot工程,spr ...
- 基于Spring Cloud和Netflix OSS构建微服务,Part 2
在上一篇文章中,我们已使用Spring Cloud和Netflix OSS中的核心组件,如Eureka.Ribbon和Zuul,部分实现了操作模型(operations model),允许单独部署的微 ...
- 今天介绍一下自己的开源项目,一款以spring cloud alibaba为核心的微服务架构项目,为给企业与个人提供一个零开发基础的微服务架构。
LaoCat-Spring-Cloud-Scaffold 一款以spring cloud alibab 为核心的微服务框架,主要目标为了提升自己的相关技术,也为了给企业与个人提供一个零开发基础的微服务 ...
- Spring Cloud 入门教程 - 搭建配置中心服务
简介 Spring Cloud 提供了一个部署微服务的平台,包括了微服务中常见的组件:配置中心服务, API网关,断路器,服务注册与发现,分布式追溯,OAuth2,消费者驱动合约等.我们不必先知道每个 ...
- spring boot 2.0.3+spring cloud (Finchley)7、服务链路追踪Spring Cloud Sleuth
参考:Spring Cloud(十二):分布式链路跟踪 Sleuth 与 Zipkin[Finchley 版] Spring Cloud Sleuth 是Spring Cloud的一个组件,主要功能是 ...
- 《Spring Cloud》学习(一) 服务治理!
前言:之前网上学习过Spring Cloud,对于工作上需要是足够了,总归对于一些方面一知半解,最近难得有些闲暇时间,有幸读了崔永超先生的<Spring Cloud 微服务实战>,一方面记 ...
- Spring Cloud(二):Eureka 服务注册中心
前言 服务治理 随着业务的发展,微服务应用也随之增加,这些服务的管理和治理会越来越难,并且集群规模.服务位置.服务命名都会发生变化,手动维护的方式极易发生错误或是命名冲突等问题.而服务治理正是为了解决 ...
- Spring Cloud系列(一):服务注册中心
一.Spring Cloud简介 Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线).分布式系统的协调导致了样 ...
- spring cloud 2.x版本 Eureka Server服务注册中心教程
本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 1.创建服务注册中心 1.1 新建Spring boot工程:eureka-server 1 ...
随机推荐
- idea搭建springboot
1.创建新项目 2.继续项目配置 Name:项目名称Type:我们是Maven构建的,那么选择第一个Maven ProjectPackaging:打包类型,打包成Jar文件Java Version: ...
- CF1059D Nature Reserve
原题链接 网络不好的可以到洛谷上去QwQ 题目大意 有N个点,求与y=0相切的,包含这N个点的最小圆的半径 输入输出样例 输入: 2 0 1 1 1 输出 0.625 感觉最多是蓝题难度? 首先无解的 ...
- VUE-开发工具VSCode
VUE-开发工具之VSCode VSCode是微软出的一款轻量级代码编辑器,免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全.Emme ...
- MSSQL Server2012备份所有数据库到网络共享盘上面,并自动删除几天前的备份。。
--要备份到哪一服务的IP网络位置,要提前打开文件夹共享.这里还要输入用户名和密码,下面这一行是建立共享 exec master..xp_cmdshell 'net use \\192.168.8.1 ...
- 腾讯云服务器tomcat端口无法访问
第一种情况: 如题:https://console.cloud.tencent.com/cvm/securitygroup 需要去这个地址设置安全组. 说实话,一句mmp不知当讲不当讲.使用说明这块太 ...
- [高中作文赏析]妈妈, 我心中的"灯"
- How to learn PDE (怎么学偏微分方程)
To learn PDE, you need some knowledge of physics (to build up the intuition), solid training of anal ...
- Codeforces 1100F(线性基+贪心)
题目链接 题意 给定序列,$q(1\leq q \leq 100000) $次询问,每次查询给定区间内的最大异或子集. 思路 涉及到最大异或子集肯定从线性基角度入手.将询问按右端点排序后离线处理询问, ...
- opensuse 使用xx-net
提示安装 [launcher][WARNING] import pynotify fail, please install python-notify if possible. gae_proxy][ ...
- 【Java】Java随手记
System.out.printf() : System.out.printf("%d",x); 输出整数 System.out.printf(&quo ...