美文网首页
配置文件格式的选择

配置文件格式的选择

作者: haitaoyao | 来源:发表于2017-09-17 23:14 被阅读864次

    经常会遇到实现一个东西, 需要使用配置文件的情况, 那么选择一个合适的配置文件格式的问题就摆在面前了, JSON? YAML? XML? HOCON?

    选哪个? 举几个例子:

    • AWS IAM 使用 JSON 格式
    • Dropwizard 使用 YAML
    • Hadoop 全家桶都是用 XML
    • HOCON 是Lightbend 公司(原名 typessafe, scala 语言背后的公司)开发了一种新语法

    什么? 你说 Java 中的 properties 格式? 那简直土得掉渣.....

    总结几个配置文件格式选择的原则:

    1. 支持注释. 不支持注释的 JSON 是给机器读的, 不是给人读的
    2. Library 精简. 看到一堆读取 XML 的 jar 包就恶心
    3. 支持嵌套结构. 仅仅支持 KV 结构的 properties 文件表达能力简直弱到爆
    4. 最好支持定义 constants, 这样可以避免重复.
    5. 最好支持 include 其他配置文件, 方便配置模块化. 复杂的配置也是无奈之举, 但如果支持 include 语法, 可以方便的把配置文件模块化.

    捋一遍几个格式, 发现 JSON 一定是最先淘汰的; XML 也不招人待见. 重点推荐一下 HOCON, 优点全占了, 很多语言都有 library 实现, 跨语言不成问题.

    -- EOF --

    相关文章

      网友评论

          本文标题:配置文件格式的选择

          本文链接:https://www.haomeiwen.com/subject/otfvsxtx.html