当前位置: 首页 > news >正文

安卓手机做网站服务器吗域名交易

安卓手机做网站服务器吗,域名交易,网站设计的目的和功能,wordpress外网不能访问SpringCloudAlibaba Nacos配置中心 在java代码中或者在配置文件中写配置,是最不雅的,意味着每次修改配置都需要重新打包或者替换class文件。若放在远程的配置文件中,每次修改了配置后只需要重启一次服务即可。话不多说,直接干货拉…

SpringCloudAlibaba Nacos配置中心

在java代码中或者在配置文件中写配置,是最不雅的,意味着每次修改配置都需要重新打包或者替换class文件。若放在远程的配置文件中,每次修改了配置后只需要重启一次服务即可。话不多说,直接干货拉满。

集成nacos配置中心

首先引入配置相关的依赖

<!--Nacos 配置中心依赖-->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!--bootstrap的依赖,由于SpringCloud2020版本上bootstrap被默认禁用了所以要引入才能使用-->
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>

其次保证项目启动时,配置先从nacos配置中心获取,所以配置都写在bootstrap.ymlbootstrap.properties中即可。bootstrap的文件比application的优先级要高。配置详情如下:

server:port: 9001
spring:application:name: consumer # 应用名cloud:nacos:discovery:server-addr: localhost:8848 # nacos服务地址config:server-addr: localhost:8848 # nacos地址file-extension: yml # 指定配置内容的数据格式

nacos中的DataId配置

DataId主要是使当前项目快速进行多套配置内容的切换,看看DataId的组成格式:

${prefix}-${spring.profiles.active}.${file-extension}

  • prefix:项目的服务名,也就是spirng.application.name的值
  • spring.profiles.active:当前的环境
  • file-extension:文件后缀

当spring.profiles.active为空时,对应的’-'连接符也将会不存在,DataId的格式就是变换为${prefix}.${file-extension}

设置profiles为dev

server:port: 9001
spring:application:name: consumer # 应用名cloud:nacos:discovery:server-addr: localhost:8848 # nacos服务地址config:server-addr: localhost:8848 # nacos地址file-extension: yml # 指定配置内容的数据格式profiles:active: dev

那么我们的文件名就应该为consumer-dev.yml,我们需要在nacos上创建配置,先创建consumer-dev.yml和consumer-prod.yml文件

在这里插入图片描述

在这里插入图片描述

通过代码获取这个配置,然后通过调整环境,注意它们的配置返回。

@RestController// @RestController注解是@Controller+@ResponseBody
@RefreshScope //通过 Spring Cloud 原生注解 @RefreshScope 实现配置自动更新
public class ConfigController {@Value("${custom.info}")// 注解获取custom.info配置的值private String config;@RequestMapping("/getConfig")public String getConfig() {  // 获取配置的接口return config;}
}

调用查看结果:

D:\springcloud\doc>curl localhost:9001/getConfig
nacos config dev

切换为prod环境,重启项目再次调用

spring:profiles:active: prod
D:\springcloud\doc>curl localhost:9001/getConfig
nacos config prod

莫得问题~

Nacos的Group配置

group是分组的意思,表示配置内容归于哪个组,默认的是DEFAULT_GROUP组,如创建配置文件时声明一个CONSUMER_GROUP

在这里插入图片描述

java代码配置:

server:port: 9001
spring:application:name: consumer # 应用名cloud:nacos:discovery:server-addr: localhost:8848 # nacos服务地址config:server-addr: localhost:8848 # nacos地址file-extension: yml # 指定配置内容的数据格式group: CONSUMER_GROUP # 指定某GROUPprofiles:active: dev

重启调用

D:\springcloud\doc>curl localhost:9001/getConfig
nacos config dev CONSUMER_GROUP

nacos的Namespace配置

namespace表示命名空间,比较粗粒度的控制。默认的namespace是public,当创建新的命名空间时,如果要指定此命名空间,则需要在java配置中声明它的namespace的id值

在这里插入图片描述

如上图创建了一个命名空间,在namespace中创建consumer-dev.yml的配置文件

在这里插入图片描述

在这里插入图片描述

在java配置中namespace是填写的ID值而不是名称

server:port: 9001
spring:application:name: consumer # 应用名cloud:nacos:discovery:server-addr: localhost:8848 # nacos服务地址config:server-addr: localhost:8848 # nacos地址file-extension: yml # 指定配置内容的数据格式namespace: e6d5450d-a8d3-45c4-9801-091586082104 # 命名空间的id值profiles:active: dev

Nacos的持久化

Nacos默认的是使用嵌入式数据库Derby数据库,也就表明越到后面越容易出现瓶颈,如存储容量限制,不方便数据查询、存储优化等等。Nacos支持使用mysql做数据持久化,版本要求mysql在5.6.5+

mysql数据持久化

在mysql中创建一个数据库,并且导入nacos-mysql.sql的文件(路径是/conf/nacos-mysql.sql)

在这里插入图片描述

在Nacos的conf/application.properties文件中添加mysql数据源支持

#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
spring.datasource.platform=mysql	# 添加mysql数据源### Count of DB:
db.num=1### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root		# 数据库账号
db.password.0=123456	# 密码

重启下nacos,登录进入后,发现我们刚刚测试的那些数据都不在了,这就是不做持久化的问题。

现在已经将数据的持久化加上了,我们像刚刚一样随便添加几个数据,然后再次重启nacos,看看数据有没有丢失。

在这里插入图片描述

server:port: 9001
spring:application:name: consumer # 应用名cloud:nacos:discovery:server-addr: localhost:8848 # nacos服务地址config:server-addr: localhost:8848 # nacos地址file-extension: yml # 指定配置内容的数据格式profiles:active: dev

调试:

D:\springcloud\doc>curl localhost:9001/getConfig
nacos config dev

重启nacos,可以看到我们的数据都还在

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CVB6CGNJ-1690076592178)(../imgs1/16.png)]

nacos的配置扩展

除了通过${prefix}-${spring.profiles.active}.${file-extension}的方式指定我们的配置文件,我们还可以直接通过dataId配置指定nacos上的一些共享配置

如创建了一个redis的共享配置

在这里插入图片描述

在java项目中不仅要读取consumer-dev.yml还要读取redis.yml的配置,可以使用extension-configs来声明

server:port: 9001
spring:application:name: consumer # 应用名cloud:nacos:discovery:server-addr: localhost:8848 # nacos服务地址config:server-addr: localhost:8848 # nacos地址file-extension: yml # 指定配置内容的数据格式extension-configs:-dataId: redis.ymlgroup: DEFAULT_GROUPrefresh: trueprofiles:active: dev

extension-configs是一个数组,extension-configs中若有多个配置时

extension-configs:-dataId: redis.ymlgroup: DEFAULT_GROUPrefresh: true-dataId: rabbitmq.ymlgroup: DEFAULT_GROUPrefresh: true
http://www.qdjiajiao.com/news/261.html

相关文章:

  • 个人域名备案完成了 可以改网站内容吗排名优化公司口碑哪家好
  • 东莞没有网站的公司百度推广充值必须5000吗
  • 网站开发培训收费关键词优化方法
  • 网站建设与设计的毕业论文百度推广助手怎么用
  • 那些做兼职的小网站一句话宣传自己的产品
  • 公司网站的建设哪家好品牌策略怎么写
  • 中山公众号平台商场网站建设企业推广方案
  • 网络工程专业毕业设计论文网站怎么优化自己免费
  • 平台网站制作免费培训seo
  • 个人动态网站开发百度站长工具怎么关闭教程视频
  • 深圳龙岗做网站公司seo首页排名优化
  • 网站建设要什么软件如何在手机上建立自己的网站
  • 网站上的3d产品展示怎么做免费网站注册免费创建网站
  • 和淘宝同时做电商的网站长沙网站seo外包
  • 郑州高端建站百度云盘登录入口
  • wordpress 3.9中文版青岛seo招聘
  • 优秀定制网站建设案例网站首页不收录
  • aspnet做网站视频教程免费的网站推广在线推广
  • 离石商城网站建设系统百度竞价sem入门教程
  • 国产做爰全免费的视频网站优化软件seo排名
  • 常用知名购物网站网络服务有限公司
  • 小说类网站功能建设2024年的新闻时事热点论文
  • 做网站有包括哪些东西谷歌推广怎么开户
  • 网站设计语言翻译手机百度2020最新版
  • 学生网页设计成品网站营销公司网站
  • 网站规划的步骤电商网站怎样优化
  • 做网站要具备哪些中国足彩网竞彩推荐
  • 网络优化是什么专业邢台市seo服务
  • 做音乐网站的目地什么软件可以弄排名
  • 女人与马做受网站搜狗快速收录方法