从零开始搭建公司SpringCloud架构技术栈,这套架构绝了!

一、微服务基础1.什么是SpringCloud?

SpringCloud官网:https://spring.io/projects/spring-cloud(个人建议是用谷歌浏览器访问官网打开中文翻译粗略把官网读一遍)

个人理解:

以前的服务器就好像,一个会语数外全能的老师,为学生提供服务,这个老师生病了,那全校停课。现在微服务流行后,学校有了数学教研组,语文教研组,外语教研组,每个教研组有一群老师具体负责某科的教学,缺了谁,学校都照样运转。

而这个变化中,那些改变历史的程序员就是把一个服务器中的众多服务,或好几台服务器中的众多服务,分类出来,解耦合出来,把他们类似的功能交给同一个集群来做,把互相耦合在一起的功能剥离出来,按业务,按功能来把他们作为一个个微服务放在服务器上,而这个服务器就只提供一个服务,或较少的服务。让一个超大的服务逻辑,解耦合为一个个小服务,均匀的分布在各自的服务器中。微服务就微在这。

每个教研组就是一个微服务集群。他们提供同样的服务,而注册中心Eureka就是这个存放这个教研组老师名单的地方,学生们想先访问这个注册中心获取教师名单,然后根据相应的负载方法去访问各自老师。不至于让集群中某一老师累死也不至于让某一老师闲死。

而Zuul网关呢,就是学校的门卫,某些学生来学校找谁,它负责指引(路由),并且通过一些非常简单的配置,达到阻拦一些人进入(身份验证),或者控制想学数学的人只能去数学教研组,不能去核能教研组学怎么造原子弹(权限验证)。

那Hystrix熔断器呢,可以把它当成学校的志愿者,当一个教研组集体罢课后,学生找不到老师了,这些志愿者及时的告诉来访问的学生,相应的结果,异常信息等,免得大量的学生在学校等待,这些志愿者赶快把这些等待的学生梳理出去,学生一直在学校等待,那其他需要学生的学校,也会等待学生,最后造成大面积的学校瘫痪。这里学生我们看成一个个请求。熔断器就是把某事故的蔓延即使熔断了。

当然这些组件也是微服务需要注册到Eureka注册中心

那SpringCloud就可以看成是这个学校了。众多上面提到的组件相当于都是这个学校的各职能部门。

二、微服务的搭建

ps: 博主基于Maven+idea搭建。

另外SpringCloud需要基于springboot搭建。

引入Spring Boot相关依赖:这里的springboot用的是1.5.7版本;引入Spring Cloud相关依赖:这里为 Edgware.SR5

2.1 工程初始化配置

在Idea中创建工程:File -> New ->Project

点击 Empty Project -> Next

项目命名 -> 项目位置

选择模组 modules ->next

进入新的窗口后,开始配置Maven,打开设置 setting

因为我之前做过配置,因此只需要改变框1的路径,如第一次配置需要自己找到你maven放置的位置,以及settings.xml,repository的位置,实在不会的百度 maven集成idea。

3个框选择完毕后点击 ok

接下来新建module

这里可能会出现加载不出archetype list的问题

用了网上的所有解决办法花了3个小时解决都没用,重启之后竟然可以了····你敢信?????小时候网吧网管的至理名言都忘了!!重启一下嘛!!

出来之后 选择quickstart ->下一步

名字自己想 想好后,复制一下你想好的 ArtifactId点击Next,groupId为组织名 也是自己想一个,一般为公司网址反写。另外搜索公众号互联网架构师后台回复“面试”,获取一份惊喜礼包。

粘贴后下一步

提供注册服务的服务器pom.xml配置如下:

<?xml version="1.0" encoding="UTF-8"?>

< projectxmlns= "http://maven.apache.org/POM/4.0.0"xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation= "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

< modelVersion> 4.0.0 </ modelVersion>

< groupId> com.yun </ groupId>

< artifactId> springcloud-eureka-server </ artifactId>

< version> 1.0-SNAPSHOT </ version>

< name> springcloud-eureka-server </ name>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值