1、说明

当一些配置需要修改在进行获取时,通常做法是修改完配置文件后再重启web服务器或者docker进行完成,下面我介绍一种热更新方法,修改完配置文件后,不需要重启服务器即可获取最新的配置文件,让服务感知配置的变化。

2、实践

下面我通过二种方式来讲解一下.net core实现选择数据热更新,让服务感知配置的变化。

2.1 通过addsingleton单例方式注入,然后使用 ioptionsmonitor实现数据热更新

2.1.1 首先在startup.cs文件中的configureservices方法添加配置

2.1.2 在pathservice构造器中注入ioptionsmonitor<systempath>实现数据热更新

2.1.3 在pathcontroller中通过调用接口方式读取最新配置路径

运行看一下效果:

现在读取到的路径是d:/file/2.jpg,我们修改一下配置文件然后重新调用接口看一下,这时会更新最新的路径。

 

2.2 通过addscoped 方式注入,然后使用 ioptionssnapshot 实现数据热更新

2.2.1 首先在startup.cs文件中的configureservices方法添加配置

2.2.2 在pathservice构造器中注入ioptionsmonitor<systempath>实现数据热更新

2.2.3 在pathcontroller中通过调用接口方式读取最新配置路径

运行看一下效果:

现在读取到的路径是d:/file/2.jpg,我们修改一下配置文件然后重新调用接口看一下,这时会更新最新的路径。

 

到此这篇关于.net core实现选择数据热更新让服务感知配置的变化的文章就介绍到这了,更多相关.net core数据热更新内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!