springcloud注册中心以及配置中心
eureka
即在pom.xml中引入eureka的依赖,之后创建不同服务,并创建注册中心,即eureka.service
在注册中心中完成如下配置
server:
port: 10086 #端口
spring:
application:
name: eurekaserver #eureka的服务名称
eureka:
client:
service-url: #eureka的地址信息
defaultZone: http://127.0.0.1:10086/eureka
之后在user.service中完成如下配置
server:
port: 8081
spring:
datasource:
url: jdbc:mysql://localhost:3306/ms_user?characterEncoding=utf8&userSSL=false&serveTimezone=UTC&rewriteBatchedStatements=true
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
application:
name: userservice
cloud:
nacos:
# discovery:
# cluster-name: SH
mybatis:
type-aliases-package: cn.itcast.user.pojo
configuration:
map-underscore-to-camel-case: true
logging:
level:
cn.itcast: debug
pattern:
dateformat: MM-dd HH:mm:ss:SSS
#eureka:
client:
service-url: #eureka的地址信息
defaultZone: http://127.0.0.1:10086/eureka
同理在order.service中完成配置
server:
port: 8081
spring:
datasource:
url: jdbc:mysql://localhost:3306/ms_user?characterEncoding=utf8&userSSL=false&serveTimezone=UTC&rewriteBatchedStatements=true
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
application:
name: orderservice
cloud:
nacos:
# discovery:
# cluster-name: SH
mybatis:
type-aliases-package: cn.itcast.user.pojo
configuration:
map-underscore-to-camel-case: true
logging:
level:
cn.itcast: debug
pattern:
dateformat: MM-dd HH:mm:ss:SSS
#eureka:
client:
service-url: #eureka的地址信息
defaultZone: http://127.0.0.1:10086/eureka
nacos注册管理
nacos需在pom.xml文件中引入依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
同时在application.yml中完成如下配置
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://localhost:3306/ms_user?characterEncoding=utf8&userSSL=false&serveTimezone=UTC&rewriteBatchedStatements=true
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
application:
name: userservice #order服务的服务名称
cloud:
nacos:
discovery:
server-addr: localhost:8848
cluster-name: HZ #服务器集群配置
mybatis:
type-aliases-package: cn.itcast.user.pojo
configuration:
map-underscore-to-camel-case: true
logging:
level:
cn.itcast: debug
pattern:
dateformat: MM-dd HH:mm:ss:SSS
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://localhost:3306/ms_order?characterEncoding=utf8&userSSL=false&serveTimezone=UTC&rewriteBatchedStatements=true
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
application:
name: orderservice #order服务的服务名称
cloud:
nacos:
discovery:
server-addr: localhost:8848
cluster-name: HZ
mybatis:
type-aliases-package: cn.itcast.user.pojo
configuration:
map-underscore-to-camel-case: true
logging:
level:
cn.itcast: debug
pattern:
dateformat: MM-dd HH:mm:ss:SSS
userservice:
ribbon:
NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule
之后打开nacos cmd后启动不同服务就可以完成通信了
nacos配置管理
在userservice中新建bootstrap.yml
spring:
application:
name: userservice #服务名称
profiles:
active: dev #配置环境
cloud:
nacos:
discovery:
server-addr: localhost:8848
config:
file-extension: yaml #文件后缀名
之后将application中相同的配置删掉
新建配置类
@Data
@Component
@ConfigurationProperties("prefix")
public class PatternProperties{
private String dateformat;
}
之后在自动注入Controller,调用配置类的get方法得到属性完成nacos配置的热更新。
配置文件的优先级:服务名-profile.yml>服务名.yml>本地配置