Spring Cloud如何可用于微服务架构
简介
微服务的发展史
微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源社区等都开始了微服务的讨论和实践。Hailo有160个不同服务构成,NetFlix有大约600个服务。国内方面,阿里巴巴、腾讯、360、京东、58同城等很多互联网公司都进行了微服务化实践。当前微服务的开发框架也非常多,比较著名的有Dubbo、SpringCloud、thrift 、grpc等。
微服务架构简介
微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。
系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。
每个微服务内聚不同的业务模块。
讲师介绍
花名:诸葛老师
诸葛老师
诸葛老师互联网工作近十年,曾就职于唯品会、京东电商等多家互联网公司,历任Java架构师、研发经理等职位。
参与并主导过千万级并发电商网站研发,多次参与电商大促活动技术保障,在分布式与高并发以及微服务相关技术领域有相当丰富经验。
以下内容根据诸葛老师公开课“Spring Cloud高可用微服务架构实战”视屏编写而成。附图一张以此为证。
接下来进入文章正题
基于Eureka的微服务项目实战
首先附图一张一般大型电商网站的架构模型图,大家自行查看,不懂之处直接百度,或者私信。
Eureka
是Netflix开源的服务注册组件,本身是一个基于REST的服务。它包含Server和Client两部分。Spring Cloud将它集成在子项目Spring Cloud Netflix中,从而实现微服务的注册与发现
为什么需要Eureka
在AWS Cloud,由于其天生的特性,服务器经常变换。我们知道每个EC2挂掉后,重启又是一个新的。不像传统的固定IP,AWS的服务器是变化的。因此需要更复杂的负载均衡方案来动态注册和注销。由于AWS并没有提供中间层负载均衡解决方案,Eureka填补了这个领域的巨大空白。
简单来说就是:Eureka负责管理、记录服务提供者的信息。服务调用者无需自己寻找服务,而是把自己的需求告诉Eureka,然后Eureka会把符合你需求的服务告诉你。同时,服务提供方与Eureka之间通过“心跳”机制进行监控,当某个服务提供方出现问题,Eureka自然会把它从服务列表中剔除。这就实现了服务的自动注册、发现、状态监控。
附图一张
Eureka与Zookeeper区别
CAP理论
开发大规模的分布式系统时会遇到三个特性:一致性(Consistency)、可用性(Availability)、分区容错(Partition-tolerance),而一个分布式系统最多只能满足其中的两项。
Eureka?AP
Zookeeper?CP
关于Zookeeper
简单概括一下
ZooKeeper主要服务于分布式系统,可以用ZooKeeper来做:统一配置管理、统一命名服务、分布式锁、集群管理。
使用分布式系统就无法避免对节点管理的问题(需要实时感知节点的状态、对节点进行统一管理等等),而由于这些问题处理起来可能相对麻烦和提高了系统的复杂性,ZooKeeper作为一个能够通用解决这些问题的中间件就应运而生了。
微服务路线图仅供学习用途
如何去学习
文章到此就要结束了,最后给各位需要学习的朋友送个福利。(该怎么去学习掌握各个技能)
并发
性能调优
分布式
以上资料关注公众号:L谈JAVA 免费领取 已领取的记得回来给作者点个赞哦
Spring Cloud如何可用于微服务架构相关推荐
- spring cloud+.net core搭建微服务架构:Api授权认证(六)
前言 这篇文章拖太久了,因为最近实在太忙了,加上这篇文章也非常长,所以花了不少时间,给大家说句抱歉.好,进入正题.目前的项目基本都是前后端分离了,前端分Web,Ios,Android...,后端也基本 ...
- spring cloud+dotnet core搭建微服务架构:配置中心续(五)
前言 上一章最后讲了,更新配置以后需要重启客户端才能生效,这在实际的场景中是不可取的.由于目前Steeltoe配置的重载只能由客户端发起,没有实现处理程序侦听服务器更改事件,所以还没办法实现彻底实现这 ...
- spring cloud+dotnet core搭建微服务架构:配置中心(四)
前言 我们项目中有很多需要配置的地方,最常见的就是各种服务URL地址,这些地址针对不同的运行环境还不一样,不管和打包还是部署都麻烦,需要非常的小心.一般配置都是存储到配置文件里面,不管多小的配置变动, ...
- spring cloud+dotnet core搭建微服务架构:Api网关(三)
前言 国庆假期,一直没有时间更新. 根据群里面的同学的提问,强烈推荐大家先熟悉下spring cloud.文章下面有纯洁大神的spring cloud系列. 上一章最后说了,因为服务是不对外暴露的,所 ...
- spring cloud+dotnet core搭建微服务架构:服务发现(二)
前言 上篇文章<手把手教你使用spring cloud+dotnet core搭建微服务架构:服务治理(-)>实际上只讲了服务治理中的服务注册,服务与服务之间如何调用呢?传统的方式,服务A ...
- iis7 您无权使用所提供的凭据查看此目录或页面。_使用Spring Cloud和Docker构建微服务架构
原文:https://dzone.com/articles/microservice-architecture-with-spring-cloud-and-do作者:Alexander Lukyanc ...
- Spring Cloud Alibaba 系统保护:微服务架构雪崩效应与服务限流
前面我们介绍了 OpenFeign 微服务间通信与 Spring Cloud Gateway 网关通信,这些是日常业务中的正常处理情况,但是在微服务环境下受制于网络.机器性能.算法.程序各方面影响,运 ...
- 手把手教你使用spring cloud+dotnet core搭建微服务架构:服务治理(-)
背景 公司去年开始使用dotnet core开发项目.公司的总体架构采用的是微服务,那时候由于对微服务的理解并不是太深,加上各种组件的不成熟,只是把项目的各个功能通过业务层面拆分,然后通过nginx代 ...
- Spring Cloud 学习笔记一 微服务架构
文章目录 前言 一.微服务 二.微服务的特点 1.小型化 2.自治化 3. 扁平化 4. 轻量级设计 5. 渐进式设计 微服务架构和整体式架构的区别 微服务架构和SOA的比较 区别一:微服务通信的轻量 ...
- 手把手教你用Spring Cloud和Docker构建微服务
什么是Spring Cloud? Spring Cloud 是Pivotal提供的用于简化分布式系统构建的工具集.Spring Cloud引入了云平台连接器(Cloud Connector)和服务连接 ...
最新文章
- 50倍时空算力提升,阿里云RDS PostgreSQL GPU版本上线
- Android camera开发总结
- 【LeetCode】35. 搜索插入位置(C++实现)
- 408计算机网络考研试题,2021考研计算机(408)试题及解析——计算机网络
- eclipse修改java类时不自动重启
- C语言:运行中获取宏名字的技巧
- Atitit prgrmlan topic--express lan QL query lan表达式语言 目录 1. 通用表达语言(CEL)	1 1.1. 8.2 功能概述	1 1.2. Ongl
- [C#] LINQ之GroupBy
- itools苹果录屏大师_【智慧技术】上网课没有手写板怎么办?AirPlayer(苹果录屏大师)秒将苹果手机“操作界面quot;或quot;摄像头quot;投屏到电脑上...
- 金融科技圈的那些财富管理应用
- 安信可云服务器,4g dtu测试,利用安信可进行透传测试
- 【旧文章搬运】暴力的查进程方法
- spark学习五——归属地计算案例
- Ubuntu 20.04使用微信 (亲测有效)
- 全力冲unreal了
- [Xcode]自己常用的Code Snippets、Xcode插件、文件目录
- OpenOffice 文件转PDF,实现文件预览
- win7 linux终端模拟器,SecureCRT(终端仿真器)
- 存储过程代码关于反跑批批量与日更新
- 一条sql是怎么执行的