文章目录
eureka配置
1.1 引入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
<version>1.4.6.RELEASE</version>
</dependency>
1.2 yml 文件
server:
port: 7001
#eureka配置
eureka:
instance:
hostname: localhost:7001 #Eureka服务端的实例名称,localhost代表服务器的地址,最后要换的
client:
register-with-eureka: false #表示是否向eureka注册中心注册自己
fetch-registry: false #fetch-registry如果为false, 则表示自己为注册中心
service-url: # 监控页面
#单机不做集群 defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
1.3启动类
@EnableEurekaServer
package com.common.springcloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
//启动之后访问 http://localhost:7001/
@SpringBootApplication
@EnableEurekaServer //EnableEurekaServer 服务端启动类,可以接受别人注册进来
public class EurekaServer_7001 {
public static void main(String[] args) {
SpringApplication.run(EurekaServer_7001.class, args);
}
}
2服务提供者
2.1 添加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
<version>1.4.6.RELEASE</version>
</dependency>
2.2 编写yml文件
Server:
port: 8001
#mybatis配置
mybatis:
type-aliases-package: com.common.springcloud.pojo
mapper-locations: classpath:mybatis/mapper/*.xml
config-location: classpath:mybatis/mybatis-config.xml
#spring配置
spring:
application:
name: springcloud-provider-dept #对应着erueka的Application的名字
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://47.96.95.15:3306/sell?useUnicode=true&serverTimezone=GMT%2B8&characterEncoding=UTF-8&useSSL=false
username: root
password: njw19920905
driver-class-name: org.gjt.mm.mysql.Driver
#以下为新增
druid:
# 指明是否在从池中取出连接前进行检验,如果检验失败, 则从池中去除连接并尝试取出另一个,
#注意: 设置为true后如果要生效,validationQuery参数必须设置为非空字符串
test-on-borrow: false
# 指明连接是否被空闲连接回收器(如果有)进行检验.如果检测失败,则连接将被从池中去除.
#注意: 设置为true后如果要生效,validationQuery参数必须设置为非空字符串
test-while-idle: true
# 指明是否在归还到池中前进行检验,注意: 设置为true后如果要生效,
#validationQuery参数必须设置为非空字符串
test-on-return: false
# SQL查询,用来验证从连接池取出的连接,在将连接返回给调用者之前.
#如果指定,则查询必须是一个SQL SELECT并且必须返回至少一行记录
validation-query: select 1
#Eureka的配置,服务注册到哪里
eureka:
client:
service-url:
#做集群需要关联集群的eureka服务器的地址,其实端口号都应该是7001,
#关联的只是服务器地址,这里因为只有一台电脑,就用了端口号代替
defaultZone: http://localhost:7001/eureka/,http://localhost:7002/eureka/,http://localhost:7003/eureka/
instance:
instance-id: springcloud-provider-dept8001 #修改eureka默认描述信息就是status
#info配置
info:
app.name: klz-springcloud
company.name: com.common.klz
2.3 启动类上添加注解
@EnableEurekaClient
package com.common.springcloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
//启动类
@SpringBootApplication
@EnableEurekaClient //在服务启动之后自动注册到eureka中
public class DeptProvider_8001 {
public static void main(String[] args) {
SpringApplication.run(DeptProvider_8001.class, args);
}
}
2.4提供一些服务加载的信息
2.4.1 添加pom
<!-- actutor完善监控信息(erekua的status指向网页的信息依赖)-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
2.4.2 修改yml文件
#info配置
info:
app.name: klz-springcloud
company.name: com.common.klz
点击跳转到页面:
3 集群
搭三个集群: 7001,7002,7003
7001绑定7002,7003
7002绑定7001,7003
7003绑定1001,7002
3.1 修改yml 文件
server:
port: 7001
#eureka配置
eureka:
instance:
hostname: localhost:7001 #Eureka服务端的实例名称,localhost代表服务器的地址,最后要换的
client:
register-with-eureka: false #表示是否向eureka注册中心注册自己
fetch-registry: false #fetch-registry如果为false, 则表示自己为注册中心
service-url: # 监控页面
#单机不做集群 defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
#localhost代表服务器的地址,最后要换的 ,集群互相关联7001关联7002和7003
#其实用的端口号都应该是7001,关联的是不同服务器的地址,因为我只有一个电脑,就用了端口号代替
defaultZone: http://localhost:7002/eureka/,http://127.0.0.1:7003/eureka/
4euraka 比zookeeper好在哪