台州做网站seo的,国内免备案空间,建设论坛网站,邯郸市房价在前一段时间#xff0c;我们实验室的项目开始变得越来越麻烦#xff0c;代码也越来越臃肿#xff0c;一个人兼顾前后端的全栈开发#xff0c;实在是力不从心#xff0c;没有一点点幸福感#xff0c;于是迫切的想要解放生产力#xff0c;放飞自我#xff0c;因此开始决…在前一段时间我们实验室的项目开始变得越来越麻烦代码也越来越臃肿一个人兼顾前后端的全栈开发实在是力不从心没有一点点幸福感于是迫切的想要解放生产力放飞自我因此开始决定重构项目改用之前学习过但是一直没用过的微服务架构。这篇文章将从以下几个角度来学习Springcloud入门的一些相关知识。1、微服务是什么2、微服务和微服务架构的区别是什么3、微服务技术有什么4、微服务的优缺点是什么5、为什么选择Springcloud作为微服务架构在写本系列文章之前我也看了很多网上的大佬那些微服务系列的文章他们写的都非常好别人问我关于一些微服务的技术文章时我也都会把那些我认为写的好的文章推送给他们但是存在一个问题那就是刚刚接触微服务的同学一开始觉得写的通俗易懂而且确实很简单但是越往后看越看不懂。因此才萌生出自己写一套循序渐进的文章。一、从单体结构说起本来想以自己的项目为例但是由于涉及一些学校不能外传的信息所以换一个常见的例子。我们以餐厅卖饭为例从上图我们会发现收银、做饭、洗碗等操作都由小张一个人完成。随着服务项目的不断复杂顾客人数的不断增多这会带来大量的问题。1、技术太复杂有时候往往会牵一发而动全身代码耦合性太大修改起来很麻烦。2、拓展能力弱功能模块代码紧耦合无人进行有效拓展3、维护成本太高一旦出一个问题修改很难受。当然还有很多很多的缺点为此继续一种技术去改善这个问题。什么技术呢就是我们今天所说的微服务架构。二、什么是微服务由于业界还没有对微服务的概念有一个统一的解释但是你可以这样去理解微服务其实就是一种思想这个思想是考虑如何把一个复杂的项目拆分成一个个独立的小项目。就好比是电脑中的进程拆分成一个个小的线程一样。再举个现在小张每一个服务业务都让不同的人来负责这就大大简化了人的劳动程度。三、微服务和微服务架构的区别是什么他们俩的区别你可以这样去理解微服务就好比是指导思想微服务架构就是根据这个指导思想实施的方案。就好比是古代的时候皇帝说要减轻赋税然后下面的大臣根据这个指导思想去实施具体的方案。当然这里还有更加标准化的回答微服务架构是⼀种架构模式它提倡将单⼀应⽤程序划分成⼀组⼩的服务服务之间互相协调、互相配合为⽤户提供最终价值。每个服务运⾏在其独⽴的进程中采⽤轻量级的通信机制互相协作如果你能理解刚刚皇帝的那个例子应该就能理解微服务架构的含义了。四、微服务技术有什么微服务的技术还是很多的python、c等等都有不过因为是专注于java所以还是主要聊聊java中的微服务技术。Dubbo被重启之后又焕发出了新的光彩但是跨语言支持不足是它的一个弱项另外功能比较少之后服务治理相关的技术完全用好这个框架的门槛比较高。这对于初学者来说开发难度还是比较大的。目前dubbo已经被阿里捐献给Apache了Apache也正在致力打造属于dubbo的微服务体系但是从这两年多的发展情况来看并不乐观。Netflix微服务架构经过多年生产验证最终形成一整套开源的微服务基础组件统称 NetflixOSSNetflix 的成功经验开始被业界认可并推崇于是Pivotal 将 NetflixOSS 开源微服务组件集成到其 Spring 体系推出 Spring Cloud 微服务开发技术栈。随着时间的推移目前基本上也占据了半壁江山。本系列教程也会围绕着Springcloud来展开。其他的微服务技术比如springcloud Alibaba、istio等等在这里就不对比了没有大规模使用的还有待观察。一旦流行了再学习也不迟。五、微服务的优缺点是什么既然要使用微服务微服务有什么优点呢他的优缺点你可以对比着单体结构的缺点来记忆。1、维护起来比较简单毕竟每一个服务只关注于项目中的一个小模块2、拓展性好有新功能需要添加的时候那就再建立一个微服务和之前的互不干扰。3、每一个微服务都有着自己的数据库优点真的是太多了能想到的就这些吧。当然还有很多缺点咳咳缺点不说太多要不然你觉得微服务不好了缺点那就是一个个微服务构成了分布式系统出现了分布式系统的各种问题。六、为什么选择Springcloud说实话一开始我在认识微服务的时候完全不理解他的特点是什么含义只有当学习了一遍之后重新回过头来看才发现原来是这样呀。不过在这里你最好先记住。否则以后你连回头的想法都没1、约定大于配置。2、适用于各种环境3、整合了Springboot的优点4、轻量级组件5、功能齐全6、灵活优点太多数不过来所以你先记住这几条看了几本书发现基本上也是这样介绍的。这篇文章是我的微服务系列的第一篇文章下一篇文章将主要开始介绍Springcloud的每一个组件的功能以及为什么要有这样一个组件。