springCloud是什么
Spring Cloud是一个微服务框架,相比Dubbo等RPC框架, Spring Cloud提供的全套的分布式系统解决方案。
Spring Cloud对微服务基础框架Netflix的多个开源组件进行了封装,同时又实现了和云端平台以及和Spring Boot开发框架的集成。
Spring Cloud为微服务架构开发涉及的配置管理,服务治理,熔断机制,智能路由,微代理,控制总线,一次性token,全局一致性锁,leader选举,分布式session,集群状态管理等操作提供了一种简单的开发方式。
Spring Cloud 为开发者提供了快速构建分布式系统的工具,开发者可以快速的启动服务或构建应用、同时能够快速和云平台资源进行对接。
springCloud的常见组件
网关,注册中心,服务提供者,服务消费者,配置中心等等
1.搭建注册中心
首先选择菜单栏File->new->project,选择Java就可以。
一路next,填好工程名字,选好地址,最后finish。搭建父工程.
Euraka是SpringCloud的注册中心,生产者和消费者都要在注册中心注册。
然后在工程上右键,新建module,选择Srping Initializr。
右侧Choose Initializr Service URL选择Default就可以,next。
分组写好这就是你的springCloud的分组,名字一般见名知意所以我们这里直接叫Euraka.然后next,选择Spring Cloud Discovery,中间选择Eureka Server。
刚创建的项目application.property的内容是空的所以我们需要添加以下内容:
server.port: 8761 #端口
spring.application.name: eurka-server #名称
eureka.instance.hostname: localhost #域
eureka.client.registerWithEureka: false
eureka.client.fetchRegistry: false
eureka.client.service-url.defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ #默认地址
然后在启动类中加上@EnableEurekaServer标签,表示这个其实是一个Eureka的服务端。
这样一个注册中心就搭建完成了.
服务提供者
provider是服务的提供者。
创建一个新的module,还是选择Spring Initializr,Group和前面的eureka-server写成一样的com.lkforce.cloud,Artifact和Name就叫provider-server吧,next,左侧还是选择Spring Cloud Discovery,中间选择Eureka Discovery Client,另外,为了提供对外服务,我们还要加上Web中的Spring Web选项.
然后依然是改application.properties配置文件:
server.port: 8762
spring.application.name: provider-a
eureka.client.service-url.defaultZone: http://localhost:8761/eureka/
还要记得在启动类前面加注解,这次是@EnableEurekaClient,表示这个其实是一个Eureka的客户端,这里是用来放我们的业务代码.
剩下的服务消费者,配置中心和网关我将会在下一篇文章阐述.谢谢大家的支持.