免费注册

Caddy核心架构(1)

作者: 速优云解决方案架构师
阅读数:153
更新时间:2024-02-23 20:34:49
Caddy核心架构(1)
p>core库,即Caddy的“核心”,主要管理配置。它可以Run()一个新的配置或Stop()一个正在运行的配置。它还提供了供模块使用的各种实用程序、类型和值。

模块做其他的事情。许多模块内建在Caddy,这被称为标准模块。它们被认为是对大多数用户最有用的。

在其核心,Caddy仅仅加载一个初始配置(“config”),或者,如果没有初始配置,打开一个套接字来接受新的配置。

Caddy的核心知道如何使用这些领域:

admin,它可以设置管理API和管理过程
日志以便它可以发出日志
但其他顶级领域(如应用程序)对Caddy的核心是不透明的。事实上,所有Caddy知道如何处理应用中的字节是将它们反序列化成一个接口类型,它可以调用两个方法:

Start ()
Stop ()
…就是这样。当配置加载时,它会在每个应用程序上调用Start(),当配置卸载时,它会在每个应用程序上调用Stop()。

当一个应用模块启动时,它会启动应用的模块生命周期。

如果你是一个构建Caddy模块的程序员,你可以在我们的扩展Caddy指南中找到类似的信息,但是更多的关注于代码。


有两种模块:主机模块和客户模块。

宿主模块(或“父”模块)是那些加载其他模块的模块。

来宾模块(或“子”模块)是那些被加载的模块。所有模块都是来宾模块——甚至是应用模块。

模块被加载,被准备和验证,被使用,然后被清理,按照以下顺序:

加载
配置和验证
使用
清理
Caddy启动模块生命周期时,配置首先被加载,初始化所有配置的应用模块。从这里开始,每一个应用模块都要走完剩下的路。

加载阶段?
加载模块涉及到将其JSON字节反序列化为内存中的类型化值。这是……基本上就是这样。它只是将JSON解码为一个值。

提供阶段?
这个阶段是大多数设置工作进行的阶段。模块在加载后有机会自行准备。

由于JSON编码中的任何属性都已经被解码,因此这里只需要进行额外的设置。配置期间最常见的任务是设置客户模块。换句话说,配置一个主机模块也会导致配置它的客户模块,一直到最后。

您可以通过遍历我们文档中的Caddy的JSON结构来对此有所了解。任何你看到{•••}的地方都可以使用来宾模块;当你点击其中一个,你可以继续探索,直到没有更多的来宾模块。

其他常见的配置任务包括设置将在模块生命周期内使用的内部值,或标准化输入。例如,http.matchers。remote_ip模块使用准备阶段从JSON接收到的字符串输入中解析CIDR值。这样,它就不必在每个HTTP请求期间都执行此操作,因此效率更高。

验证也可以在准备阶段进行。如果一个模块的配置无效,会返回一个错误,从而终止整个配置加载过程。

使用阶段?
一旦客户模块被供应和验证,它就可以被它的主机模块使用。这到底意味着什么取决于每个主模块。

每个模块都有一个ID,该ID由一个名称空间和该名称空间中的一个名称组成。例如,http.handlers。reverse_proxy是一个HTTP处理程序,因为它在HTTP。处理程序名称空间,它的名称是reverse_proxy。http中的所有模块。处理程序名称空间满足主机模块已知的相同接口。因此,http应用程序知道如何加载和使用这些类型的模块。

清理阶段?
当需要停止配置时,所有模块都会被卸载。如果一个模块分配了任何应该释放的资源,它就有机会在清理阶段这样做。

发表评论

评论列表

暂时没有评论,有什么想聊的?

低代码协同办公系统定制

低代码协同办公系统定制

释放创造力,简化办公。低代码定制OA协同系统,高效协同助您一展宏图。



热推产品-全域低代码平台

会Excel就能开发软件

全域低代码平台,可视化拖拉拽/导入Excel,就可以开发小程序、管理系统、物联网、ERP、CRM等应用

Caddy核心架构(1)最新资讯

分享关于大数据最新动态,数据分析模板分享,如何使用低代码构建大数据管理平台和低代码平台开发软件

'AI写歌王'如何颠覆音乐创作?揭秘其背后的智能奥秘与创作流程

'AI写歌王'如何颠覆音乐创作?揭秘其背后的智能奥秘与创作流程 一、'AI写歌王'的崛起与影响力概述 1.1 AI技术在音乐创作领域的兴起背景 随着人工智能技术的飞速发展,其应

...
2024-08-19 10:57:34
深度解析:大模型的特点如何引领AI技术的新一轮变革?

一、引言:大模型时代的崛起与AI技术变革的序幕 1.1 大模型概念的界定与发展历程 1.1.1 大模型定义与核心特征解析 大模型,作为人工智能领域的新兴概念,指的是具有海量参

...
2024-08-19 10:57:34
'AI怎么写拼音格':智能工具助力,轻松掌握拼音书写规范

'AI怎么写拼音格':智能工具助力,轻松掌握拼音书写规范制作提纲 一、引言:AI技术在拼音学习中的应用背景 1.1 拼音学习的重要性与现状挑战 拼音作为汉语学习的基石,不仅

...
2024-08-19 10:57:34

Caddy核心架构(1)相关资讯

与Caddy核心架构(1)相关资讯,您可以对低代码协同办公系统定制了解更多

×
销售: 17190186096
售前: 15050465281
合作伙伴,请点击

微信聊 -->

速优物联PerfCloud官方微信