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

网站建设公司3luewordpress上传svg

网站建设公司3lue,wordpress上传svg,免费咨询离婚律师在线,潍坊市安丘建设局网站作者#xff1a;尚卓燃#xff08;PsiACE#xff09;澳门科技大学在读硕士#xff0c;Databend 研发工程师实习生 Apache OpenDAL(Incubating) Committer https://github.com/PsiACE 对于 Databend 这样复杂的数据库服务端程序#xff0c;往往需要支持大量的可配置选项尚卓燃PsiACE澳门科技大学在读硕士Databend 研发工程师实习生 Apache OpenDAL(Incubating) Committer https://github.com/PsiACE 对于 Databend 这样复杂的数据库服务端程序往往需要支持大量的可配置选项以帮助运维人员根据实际使用需要管理和调优系统。 Databend 目前支持三种配置方式命令行、环境变量和配置文件优先级依次递减。 一般情况下推荐使用配置文件来记录和管理各种配置。对于 K8S 集群为了灵活变更部分配置比如特性开关使用环境变量可能是更优雅的形式。命令行则用于调整本地环境下的少数冲突配置。 Databend Query 中的映射 对于 databend-query 不管是什么形式的配置其配置选项几乎可以看作是代码的扁平化树形映射即基本符合代码中「配置域」「配置项」的逻辑。 环境变量和配置文件中利用 serfig 将代码嵌套展开使用 _ 做为分隔符。命令行中稍有不同一方面分隔符使用 -另一方面部分命令行选项的名称中没有绑定配置域。 为了更好理解这里的映射关系我们可以深入到具体一项配置下面将围绕 admin_api_address 这个配置项展开。 在环境变量上需要使用 QUERY_ADMIN_API_ADDRESS QUERY 表征这个配置所处的域而 ADMIN_API_ADDRESS 是具体的配置项。在配置文件中通常是使用 toml 来进行配置。 [query] 表征配置所处的域admin_api_address 为具体的配置项。 [query] ... # Databend Query http address. # For admin RESET API. admin_api_address 0.0.0.0:8081 ... 命令行中需要使用 --admin-api-address 进行配置这一项没有绑定「配置域」。如果是配置 --storage-s3-access-key-id 那么「storage」 「s3」构成配置域「access-key-id」是具体的配置项。 在了解如何对 admin_api_address 进行配置后让我们进入到配置相关的代码进一步查看映射关系的代码形式位于 src/query/config/src/config.rs。 pub struct Config {...// Query engine config.#[clap(flatten)]pub query: QueryConfig,... }/// Query config group. #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize, Args)] #[serde(default, deny_unknown_fields)] pub struct QueryConfig {...#[clap(long, default_value 127.0.0.1:8080)]pub admin_api_address: String,... } 因为代码中使用了嵌套的层级结构最上层是 Config而 admin_api_address 是 pub query: QueryConfig 中的一个配置项经过 serfig 处理后需要使用 QUERY 或者 [query] 表征其所处的域配置项就还是 admin_api_address 。 而命令行中具体的配置项名称和默认值会受到 #[clap(long long-name, default_value value)] 控制clap 会接管配置 admin_api_address 就变成了 --admin-api-address。--storage-s3-access-key-id 而言其实际的代码层级是 Config - StorageConfig - S3StorageConfig - access_key_id字段之上有标注 #[clap(long storage-s3-access-key-id, default_value_t)] 所以需要使用 --storage-s3-access-key-id 进行配置。 Databend Meta 中的映射 databend-meta 的配置文件和命令行逻辑与 databend-query 是基本一致的。但是环境变量是通过 serfig 内置的 serde-env 自行定义的映射关系但同样可以尝试按「配置域」「配置项」进行理解。 同样具体到单独的某项配置来看一下这里以 log_dir 为例。 在环境变量上需要使用 METASRV_LOG_DIR METASRV 表征这个配置所处的域而 LOG_DIR 是具体的配置项。而在配置文件中这一配置项作用于全局只需要 log_dir ./.databend/logs1 在命令行中当然也直接 --log-dir 进行配置。 让我们通过代码来解构其映射代码位于 src/meta/service/src/configs/outer_v0.rs。 #[derive(Clone, Debug, Serialize, Deserialize, PartialEq, Eq, Parser)] #[clap(about, version **METASRV_COMMIT_VERSION, author)] #[serde(default)] pub struct Config {.../// Log file dir#[clap(long log-dir, default_value ./.databend/logs)]pub log_dir: String,... } 配置文件和命令行参数相关的配置项是由 Config 结构体管理的逻辑与 databend-query 一致就不再赘述。 而环境变量的配置项是由 ConfigViaEnv 结构体进行处理的如下 /// #[serde(flatten)] doesnt work correctly for env. /// We should work around it by flatten them manually. /// We are seeking for better solutions. #[derive(Clone, Debug, Serialize, Deserialize, PartialEq, Eq)] #[serde(default)] pub struct ConfigViaEnv {...pub metasrv_log_dir: String,... } 与 Config 之间的映射关系位于 impl FromConfig for ConfigViaEnv 和 impl IntoConfig for ConfigViaEnv这两个部分。对于 metasrv_log_dir 而言就是映射到前面的 log_dir 字段。
http://www.yutouwan.com/news/173566/

相关文章:

  • 做个网站怎么做常州专业网站建设公司哪家好
  • 网站设计专业怎么做网站 白
  • it网站建设方案安顺 网站建设
  • 网站关键词快速排名淘客做的网站属于什么类型
  • 北京做网站推广多少钱网站建设首先要选择题
  • 网站项目方案建设网站的建筑公司
  • 网站内容做淘宝店铺链接影响排名吗软件开发平台建设
  • 电商网站平台建设资金预算导视设计师
  • 深圳网站制作公司电话怎么看别人的网站有没有做301
  • 网站域名备案地址网站商城建设视频教程
  • 深圳市罗湖区网站建设网站建设推广熊掌号
  • 网站推广公司转型方向永久免费自助建站平台
  • 网站建设模板案例响应式wordpress 评论 头像
  • 化妆品网站建设平台的分析企业建站免费模板
  • 企业网页与网站区别网站建设企业号助手
  • 网站开发的职业规划室内设计师网名专用
  • wordpress音乐站源码高校网站建设需求分析
  • 中国铁路建设监理协会官方网站山东省建设厅网站特种作业
  • 网站不备案可以做淘宝联盟吗聊天软件开发需要多少钱
  • 黑龙江省住房和城乡建设网站用dw做的十二星座网站免费
  • 论坛网站建设开源工具网站服务器建设教程
  • 有什么字体设计网站济宁网站建设电话
  • wordpress开启子域名多站怎样在外管局网站做延期付款
  • 网站首页改版费用一个做网站的软件
  • 高端网站建设公司有必要做吗中国城乡建设经济研究所 网站
  • 增城营销网站建设生物医药基地网站建设
  • 枣阳网站建设公司做淘宝网站销售怎么样
  • 公司网站制作招聘.net做网站的优缺点
  • 群辉服务器建设的网站wordpress 怎么安全
  • 网站建设以推广哪个网站可以做c语言的题