肝了两万字的springcloud,错过了血亏

在这里插入图片描述

前言

我们会首先介绍一下网络中的名词,让大家更好的更熟悉的去理解复杂业务系统之间的交互,如果你是一个小萌新,千万不要被网络中的各种名词唬住,你只需要记住,万变不离其宗,这些只是五花八门的名词而已,原理大概率也就那么回事~

熟悉我的小伙伴都知道我不是计算机软件专业的,是一个完完全全的自学党,就像我刚刚大三的时候,开始自学Java,因为我专业不学,所以只能自学咯,至于具体的原由,大家移步到我的个人生活篇,来走进我的内心~

当时的我,也算是Java界的小萌新,学习spring的过程中听到IOC和AOP这种名词,当时的感觉只能说是牛逼,感觉瞬间档次就上来了,然后自己的懵逼感也是成倍的增加,当时大概的感觉就是完全被这些个花花名词给唬住了

再说一些小插曲

在学习Java的过程中就接触到了当时感觉超级牛X的SSM,我竟一度认为只要我学会SSM,就可以很厉害

你能不能想象当时我自己按照视频教程搭建了一套SSM,然后画了一个巨抽象的页面和写了几个巨简单的数据库查询接口,JDBC,大家都懂得,直接一套连接,增删改查,哎哟喂,当时的那个心情啊,简直就是叫花子哼着太平调-穷开心

现在想起来真是不知天高地厚

这一篇没有什么源码的讲解,基本都是通过聊天的方式来让大家在潜移默化中熟悉网络中的一些基础概念和了解springcloud中的部分常用组件的功能

先来个简介

先给大家看一张图,如果你完全明白整个架构图,恭喜你,太棒了,如果你能够自己画出来整个结构图,能够深刻的理解每个组件的真正作用,该组件在此系统中的存在的意义,那恭喜你,下次面试直接架构师起步

在这里插入图片描述

哈哈,开个玩笑,简单给大家说一遍先,大家先尝试着理解一遍

客户端请求进来之后,首先是Nginx负载均衡,这个大家应该都听过吧,属于一个高性能的HTTP和反向代理的服务器,反向代理是对客户端无感知的,这个东西的作用就是让非常多的客户请求均匀的分配到相应的服务器

接下来就是服务网关,这个东西还是很重要的,很多公司也都会用,属于跨服务的代理,可以进行路由转发,鉴权等,保护系统很有用

然后我们内部看到很多的业务服务群service,这些当然就是我们平时接触最多的服务咯,你每天写的接口就是属于这一层的,我们可以看到在服务的左右侧都有很多东西,这些小组件各个都是小能手,各有各的能耐

属于天生我材必有用的那种

在这里插入图片描述

Eureka和Consul都是属于服务治理组件,写的业务service就是注册到这里,然后可以被其它的服务发现并且调用

Config这个属于一个配置中心,每个服务都会有很多配置文件,这些可能会有很多公共的地方,而且也比较难于管理,甚至你改一个配置文件都需要重新部署这个项目,用了这个我们就不用每次都重启服务啦,可以实现"热部署"了

Hystrix容错保护+Turbine集群监控+Sleuth链路跟踪,这一套下来,保护系统不会挂掉,可以进行服务降级,出现问题有迹可循

springcloud bus消息总线,config可以解决不重启情况下更新配置,但是我们需要一个服务一个服务的发送post请求,也是稍微有点麻烦的,这种情况下大家应该想到了消息队列的发布订阅模型了吧,我们通过bus就可以实现,只需要在config server端发起refresh,就可以触发所有微服务的更新了

springcloud task任务调度,定时任务,比如每天凌晨一点清空昨天的无用数据

springcloud data flow数据流操作,用于处理数据量较大的处理,批量运算和持续运算这种

和springcloud stream流操作,解决系统中不同中间件的适配问题,自动适配,给不同的MQ之间进行切换

什么是spring cloud

springcloud属于一个系列框架的有序集合,就是一个全家桶系列。不知道大家知道Spring boot吗,cloud就是基于boot,boot更像是一个便捷的单点开发框架,帮助大家解决各种配置文件的烦恼

而cloud呢,是一个大集合,基于springboot的,为了微服务体系开发中的架构问题,属于一套组件,提供了一整套的解决方案

它利用spring boot的开发便利性巧妙的简化了分布式系统基础设施的开发,比如服务发现注册、消息总线、配置中心、负载均衡、熔断器这些,都可以用springboot的开发风格来做到一键启动和部署,更为便捷

springcloud中的微服务是可以独立部署、水平扩展,以及独立访问,springcloud属于这些组件的大管家,在这一点类似于我们说的Hadoop全家桶吧,包含很多相应的处理框架,当然Hadoop本身也是一个大数据处理框架

集群

在这里插入图片描述

先来看下百度百科对于集群技术的讲解,两个关键词,相互独立和组,特点:

1、高可用性,独立性,A挂了并不会对系统造成太大影响,B还可以继续工作

2、提高效率,集群可以提高系统的工作效率

我们一起来看例子:你厌倦了上班的生活,决定换一种活法,于是决定,辞职创业!

你有了一个好点子,开发了一个打车小程序滴滴打打,刚开始写好了直接发布,四面八方的用户来注册了,前期没问题,服务器顶得住,但是随着用户量越来越大,你部署的一台服务器顶不住了,怎么办呢,加内存,加CPU,但是这些还是不够用的

于是有了一个简单暴力的法子,加机器!只有花钱才能变强,没错,原先是只有一台服务器A来提供服务,现在加了个服务器B,A和B可以提供同样的服务,A挂了B可以顶上,A和B同心协力,A和B就组成了一个小集群!

集群,用于给各个服务器间分担压力!

分布式和微服务,傻傻分不清楚

从概念理解࿰

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值