Qile Liang's blog

归档 · 2023

首页

关于

归档

loading..

coredns插件原理与corefile原理

什么是coredns?coredns是谷歌开发并开源的一款dns解析服务器。其使用golang开发,提供了插件跨平台等特性。 coredns插件注册插件coredns框架会在初始化时对插件进行注册,注册过后的插件可以被配置和调用。这里用 log 插件举例说明, 在 init() 内注册 log 的 setup 装载方法, 然后使用 AddPlugin 注册一个 plugin.Plugin 方法. 其目的就是要实现中间件那种调用链。其调用遵循一个调用链的倒叙。代码位置: plugin/log/setup.go // 注册 log 插件, 把 log 的 setup 装载方法注册进去. func init() { plugin.Register("log", setup) } func setup(c *..

更多