基于inotify实现配置文件热更新

本文介绍了如何在Go语言中利用Linux的inotify接口实现配置文件的热更新。通过初始化inotify,添加文件监听,以及获取监听事件,监控配置文件的变化,当文件被写入后关闭时,触发重新读取文件内容,实现热更新。
摘要由CSDN通过智能技术生成
涉及所有的移动事件,包括   IN_MOVED_FROM    IN_MOVED_TO640?wx_fmt=png

点击蓝字关注我们

奇技指南


上篇文章《Go配置文件热加载 - 发送系统信号》中给大家介绍了在Go语言中利用发送系统信号更新配置文件。其核心思想就是:新起一个协程,监听linux 的用户自定义信号 USR1 , 当收到该信号类型时,主动更新当前配置文件。

那么接下来,我们将继续完成上一篇文章提到的第二种实现配置文件热更新方式:利用linux提供的inotify 接口实现配置文件自动更新


01

关于inotify

首先在我们实操之前,让我们先来了解下什么是 inotify

 Linux 内核 2.6.13 (June 18, 2005)版本之后,Linux 内核新增了一批文件系统的扩展接口(API),其中之一就是inotifyinotify 提供了一种基于 inode 的监控文件系统事件的机制,可以监控文件系统的变化如文件修改、新增、删除等,并可以将相应的事件通知给应用程序。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值