SpringCloud
SpringCloud是一套完整的微服务解决方案,基于SpringBoot框架
准确的说,它不是一个框架,而是一个很大的容器,它将市面上较好的微服务框架集成进来,从而简化了开发者的代码量
为了创建SpringCloud的服务中心,需要用SpringCloud组件上Spring Cloud Netflix的Eureka
Eureka是SpringCloud默认的服务注册和发现模块;
Eureka中非常重要的两部分:Eureka server &Eureka client
编写服务器Eureka Server
pom.xml依赖
(建项目选低版本的,依赖有的时候会unknown)
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
启动服务注册中心,加注解@EnableEurekaServer
@SpringBootApplication
@EnableEurekaServer
public class SpringcloudApplication {
public static void main(String[] args) {
SpringApplication.run(SpringcloudApplication.class, args);
}
}
application.yml(EurekaServer)
server:
port: 8761 #注册中心的端口号
eureka:
instance:
hostname: localhost # IP地址
client:
register-with-eureka: false # 是否向 Eureka 注册服务。该应用为服务注册中心,不需要自注册,设置为 false
fetch-registry: false #该应用为服务注册中心,职责为注册和发现服务,无需检索服务,设置为 false
service-url:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ # 注册中心地址
spring:
application:
name: springcloud #项目名
security: #spring-security(Eureka Server用户认证安全Security)
user:
name: admin
password: 123456
启动

Eureka client
application.yml(EurekaClient)
server:
port: 8762 # 表示的当前这个微服务的端口
eureka:
client:
service-url:
defaultZone: http://admin:123456@localhost:8761/eureka # Eureka Server地址 表示将当前的微服务注册到哪个Eureka
instance:
prefer-ip-address: true # 表示将ip地址注册到Eureka Server
spring:
application:
name: springcloudusers # 当前应用的名称.用于注册到Eureka Server 以后的服务与服务之间相互调用一般都是根据这个name
thymeleaf:
cache: false
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/db16?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT
username: root
password: 123456
jpa:
database: mysql
show-sql: true
hibernate:
naming:
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
启动服务注册中心,加@EnableEurekaClient
@SpringBootApplication
@EnableEurekaClient
public class SpringcloudusersApplication {
public static void main(String[] args) {
SpringApplication.run(SpringcloudusersApplication.class, args);
}
}

浙公网安备 33010602011771号