微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

springcloud学习记录一、了解微服务

此学习通过查阅相关资料,自己理解的方式进行总结,没有用太多的官方语言,官方语言一直不喜欢,搞得高大上,其实很简单,就是能装那个啥,看的人头疼,尤其是对新手,如果有人发现有问题请指正,谢谢。

一、单机结构

对于一个小项目,并且使用人数不多时,开发者一般会在一个项目中完成所有的开发工作,并且将其部署在一台服务器上,为用户提供访问支持

简单理解:一个单一项目完成所有开发工作,项目部署在一个服务器上

二、集群

所有的服务器无论有多好,其性能都有上限,受限于网络带宽、单机内存、cpu等,系统访问人数越多,服务器耗费资源越多,当用户达到一定人数,服务器资源被占用超过一定值时,这时候访问便出现卡顿,严重时出现宕机,解决这个问题,便出现了集群,将系统部署在多个服务器上,这样系统的处理数据能力便能够进行分担。

简单理解:

对于单机结构的理解:同一个系统部署在多个服务器上。

分布式中的集群:同一个业务部署在多个服务器上

节点:集群中的每台服务器便是一个节点。

负载均衡:

要保证每台服务器能够进行资源合理分配,用户的请求由哪个节点进行处理才能够保证也就是所有的服务器能够共同分担压力,当然是选择负载最小的服务器了,做这些事需要一个专门调度者,在请求服务前,将请求给调度者,调度者根据节点负载情况进行分配到底是由哪个节点进行请求处理,这个调度者就是负载均衡。

适合于大量用户访问同一组应用程序的情况

三、分布式

一个系统业务比较庞大而复杂的时候,如果还用单机结构就会开发困难,功能模块之间的耦合度增高,导致项目臃肿,维护困难,并且业务扩展困难,甚至无法扩展。并且能够解决高并发引起的问题。

简单理解:根据系统业务进行拆分成为多个子系统,并且每个子系统能够单独进行独立开发,测试和部署,然后通过RPC远程调用实现子项目之间的通信。

四、SOA

百科解释:面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。

说实话没看明白( ╯□╰ )

四、微服务

查阅资料,没有标准定义。它是面向服务的体系结构(SOA)架构样式的一种变体

简答理解:将系统架构按照业务划分为不同的小的子业务进行设计开发的方法,每个子业务都是独立的应用,可单独使用,并可复用。

提示:微服务中不同的子系统可以用不通的开发语言进行开发,比如系统中用户管理用java开发,统计管理用python开发完全是可以的。五

五、CAP理论

百科:在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。

其中的分区容错性是必须的,所以一般需要满足AP或者CP,但也并不是说就放弃了另外一个,只是另外一个要做到极致的好是不行的

一致性:指所有的节点(每个子业务是一个节点)其数据都是最新的

可用性:数据拥有高可用性

分区容错性:

百科:是指系统能够容忍节点之间的网络通信的故障。

分区:节点之间的网络一般是连通的,如果出现问题,某些节点之间不连通了,这时候网络就分成了几块区域。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐