1,Springcloud环境搭建:
springcloud基于springboot,所以需要先导入springboot的依赖包:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
其次,导入springcloud的依赖包,spring-cloud-dependencies包含了springcloud的所有依赖包:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Brixton.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
最后,如果需要使用Java -jar命令来启动jar包,必须要在springboot中加上以下插件打的包里面才会有maven依赖的jar包和spring boot的启动类,所以打的jar包也就比较大,而且MANIFEST.MF文件里面也会有启动类的信息。但是如果不加这个插件,则打的包里面就只有class文件,:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2,springcloud中服务注册与服务发现Eureka:
1。1,Eureka服务端的环境搭建:
首先导入Eureka服务端启动所需要的依赖包:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
然后创建application.yml以及日志文件,在application.yml文件中定义Eureka服务地址及端口:
spring:
application:
name: eureka-server
server:
port: 7070
eureka:
client:
register-with-eureka: true
fetch-registry: false
service-url:
defaultZone: http://localhost:${server.port}/eureka/
最后创建一个启动类,需要在启动类上加上@EnableEurekaServer注解
1.2Eureka客户端的服务注册环境搭建:
首先需要加入Eureka客户端需要的依赖包:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
然后需要在配置文件application.yml中加上指定Eureka服务端的地址及端口号:
eureka:
client:
service-url:
defaultZone: http://localhost:7070/eureka/
最后在启动类上 面需要加入@EnableEurekaClient注解来表示将该服务注册到Eureka服务端
1.3Eureka客户端的服务注册及发现环境搭建(这里使用springcloud自带的rest方式来进行服务发现):
首先还是需要将当前服务注册到Eureka服务端进行统一管理,可参见1.2,这里略。
然后在服务中创建一个RestTemplate实例,其中的@LoadBalance注解表示启用负载均衡策略,调用restTemplate。getForObject("http://另一个服务的application。name/另一个服务的url接口","另一个接口的返回类型");
@Autowired
private RestTemplate restTemplate;
@RequestMapping("/getOrder")
public String getOrder(){
return restTemplate.getForObject("http://order-server/getOrderAll", String.class);
}
//需要注入RestTemplate
@Bean
//LoadBalanced表示支持负载均衡采用的是ribbon
@LoadBalanced
public RestTemplate restTemplate(){
return new RestTemplate();
}
注:服务发现rest、fegin使用的底层原理是httpClient技术实现获取真实地址
3,springcloud的网关zuul的环境搭建:
1.1首先需要加入zuul的依赖包:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zuul</artifactId>
</dependency>
然后需要在application.yml文件指定一个名称地址并指定其实际跳转的项目路径,并且需要将zuul网关一并注册到eureka服务注册中心去:
spring:
application:
name: zuul-server
server:
port: 8088
eureka:
client:
service-url:
defaultZone: http://localhost:7070/eureka/
zuul:
routes:
api-a:
path: /api-member/** #可自定义,实际路径为以下,访问改地址会跳转到以下路径
service-id: member-server
api-b:
path: /api-order/**
service-id: order-server
4,springcloud分布式配置中心环境搭建:
在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件,在SpringCloud中,有分布式配置中心组件springcloud config,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程git仓库中,在Springcloud config组件
中,分两个角色:一是config server,二是config client。
1,创建git地址:使用码云创建git地址:https://gitee.com.itmayi
2,config-client-dev.properties ---dev环境
3,上传配置文件
userName=yushengjun
4,http://localhost:8889/foo/dev 查询配置中心
没有合适的资源?快使用搜索试试~ 我知道了~
springcloud环境搭建入门
共90个文件
xml:15个
prefs:13个
java:12个
需积分: 26 16 下载量 183 浏览量
2018-05-20
18:54:25
上传
评论
收藏 47KB RAR 举报
温馨提示
包含springcloud环境搭建分布式,其中包含eureka服务注册中心、ribbon负载均衡配置、网关zuul配置以及分布式配置中心如何配置等demo
资源推荐
资源详情
资源评论
收起资源包目录
spring-service-workspace.rar (90个子文件)
config-client
pom.xml 1KB
target
test-classes
classes
bootstrap.properties 174B
META-INF
maven
com.lovnx
config-client
pom.xml 1KB
pom.properties 270B
MANIFEST.MF 276B
com
org
config
ConfigApp.class 682B
controller
Controller.class 742B
.settings
org.eclipse.m2e.core.prefs 90B
org.eclipse.jdt.core.prefs 243B
src
test
resources
java
main
resources
bootstrap.properties 174B
java
com
org
config
ConfigApp.java 300B
controller
Controller.java 421B
.project 565B
.classpath 1KB
config-server
pom.xml 1KB
target
test-classes
classes
META-INF
maven
com.lovnx
config-server
pom.xml 1KB
pom.properties 270B
MANIFEST.MF 276B
application.properties 296B
org
com
config
ConfigApp.class 749B
.settings
org.eclipse.m2e.core.prefs 90B
org.eclipse.jdt.core.prefs 243B
src
test
resources
java
main
resources
application.properties 296B
java
org
com
config
ConfigApp.java 389B
.project 565B
.classpath 1KB
micro-service
pom.xml 1KB
node.txt 5KB
.settings
org.eclipse.m2e.core.prefs 90B
src
site
.project 393B
order-server
pom.xml 1KB
target
test-classes
classes
META-INF
maven
com.lovnx
order-server
pom.xml 1KB
pom.properties 267B
MANIFEST.MF 275B
application.yml 512B
com
org
order
OrderApp.class 745B
controller
LoginController.class 1KB
.settings
org.eclipse.m2e.core.prefs 90B
org.eclipse.jdt.core.prefs 243B
src
test
resources
java
main
resources
application.yml 512B
java
com
org
order
OrderApp.java 398B
controller
LoginController.java 696B
.project 564B
.classpath 1KB
eureka-sever
pom.xml 1KB
target
test-classes
classes
logback.xml 3KB
META-INF
maven
com.lovnx
eureka-sever
pom.xml 1KB
pom.properties 267B
MANIFEST.MF 275B
application.yml 236B
com
lovnx
EurekaServer.class 756B
.settings
org.eclipse.m2e.core.prefs 90B
org.eclipse.jdt.core.prefs 243B
src
test
resources
java
main
resources
logback.xml 3KB
application.yml 236B
java
com
lovnx
EurekaServer.java 414B
.project 564B
.classpath 1KB
newzuul
pom.xml 1KB
target
test-classes
classes
META-INF
maven
com.lovnx
newzuul
pom.xml 1KB
pom.properties 252B
MANIFEST.MF 270B
application.yml 417B
org
com
zuul
filter
MyFilter.class 2KB
ZuulApp.class 803B
controller
ZuulController.class 315B
.settings
org.eclipse.m2e.core.prefs 90B
org.eclipse.jdt.core.prefs 243B
src
test
resources
java
main
resources
application.yml 417B
java
org
com
zuul
filter
MyFilter.java 1KB
ZuulApp.java 466B
controller
ZuulController.java 72B
.project 559B
.classpath 1KB
member-server
pom.xml 1KB
target
test-classes
classes
META-INF
maven
com.lovnx
member-server
pom.xml 1KB
pom.properties 270B
MANIFEST.MF 276B
application.yml 167B
org
com
member
MemberApp.class 750B
controller
MemberController.class 832B
service
MemberService.class 1KB
.settings
org.eclipse.m2e.core.prefs 90B
org.eclipse.jdt.core.prefs 243B
src
test
resources
java
main
resources
application.yml 167B
java
org
com
member
MemberApp.java 390B
controller
MemberController.java 484B
service
MemberService.java 1KB
.project 565B
.classpath 1KB
共 90 条
- 1
资源评论
Loren_云淡风轻
- 粉丝: 1009
- 资源: 46
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功