首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
index90
V2EX  ›  程序员

如果要统一配置文件格式,你们会选哪种

  •  
  •   index90 · 272 天前 · 4174 次点击
    这是一个创建于 272 天前的主题,其中的信息可能已经有所发展或是发生改变。

    为什么要统一配置文件格式这个问题就别问了,一个答案,方便运维人员维护。 PS:同时存在多种语言开发的服务组件

    1. .ini
    2. .properties
    3. .json
    4. .yaml
    5. .toml

    欢迎补充。

    51 回复  |  直到 2019-05-07 20:01:08 +08:00
    37Y37
        1
    37Y37   272 天前
    推荐下我们目前管理配置文件的方式,对运维有好,配合很爽:
    https://mp.weixin.qq.com/s/uGUvV4jl4YIvNztuepdC8A
    xenme
        2
    xenme   272 天前
    xml?
    agdhole
        3
    agdhole   272 天前
    xml
    xnode
        4
    xnode   272 天前
    xml
    runze
        5
    runze   272 天前
    toml > jsonnet > json > rc、ini 等 > xml > yaml
    pmispig
        6
    pmispig   272 天前
    我选择 yaml
    1800x
        7
    1800x   272 天前 via Android
    yaml
    prolic
        8
    prolic   272 天前   ♥ 2
    toml 天下第一
    murmur
        9
    murmur   272 天前
    xml 配合定义的优势是其他配置文件没法比的 尤其是大型项目
    tingyunsay
        10
    tingyunsay   272 天前
    反正 ini 不好用,嵌套 kv 多几层我没找到方法使用
    AngryMagikarp
        11
    AngryMagikarp   272 天前
    consul
    waising
        12
    waising   272 天前
    yaml 在用 想用 toml
    zhengxiaowai
        13
    zhengxiaowai   272 天前
    json 无法注释,做配置文件找虐啊
    luozic
        14
    luozic   272 天前
    yaml swagger 等等一堆 無縫接入,你搞個啥的玩個啥?
    index90
        15
    index90   272 天前
    @tingyunsay 之前我一直用 ini,因为好理解,够清晰,学习成本低。

    关于嵌套,我采取的办法就是“平铺”。理由是,如果配置嵌套,复杂度就会提高,容易出错。所以将这些问题全部扼杀在开发之初。除了数组外,目前还没遇到平铺无法解决的情况。
    flanker
        16
    flanker   272 天前
    yaml 投一票
    siganushka
        17
    siganushka   272 天前
    yaml +1
    conn4575
        18
    conn4575   272 天前 via Android
    yaml+1
    gamexg
        19
    gamexg   272 天前 via Android
    toml
    itning
        20
    itning   272 天前 via Android
    yml
    sariya
        21
    sariya   272 天前 via Android
    @index90 配置项多了用 ini 就比较乱,用 xml 有层次结构就好多了,特别是一些参数有很多属性时
    iwong0exv2
        22
    iwong0exv2   272 天前 via Android
    必须 toml 啊!居然还有那么多投 yaml 的…
    iwong0exv2
        23
    iwong0exv2   272 天前 via Android
    @tingyunsay toml 就能解决你说的问题
    Track13
        24
    Track13   272 天前 via Android
    yaml 吧,虽然缩进坑过我
    huiyifyj
        25
    huiyifyj   272 天前 via Android
    yaml > json > ini.
    话说 toml 和 ini 有些相似
    lihongjie0209
        26
    lihongjie0209   272 天前
    首先排除 yaml, 垃圾
    zhouzm
        27
    zhouzm   272 天前
    之前用 yaml,但看过 toml 后打算试试
    zyp0921
        28
    zyp0921   272 天前
    我选择用 uci- -
    uci 天下无敌
    index90
        29
    index90   272 天前   ♥ 3
    yaml 号称对人类阅读友好,不知道为何我觉得 yaml 很难看,不过我同时也觉得 python 的代码风格也很难阅读,对齐对半天……
    fire9
        30
    fire9   272 天前
    配置文件 Toml 是王道啊.
    Wisho
        31
    Wisho   272 天前
    @index90 哈哈哈,我个人也觉得 yaml 很不人类友好。
    guog
        32
    guog   272 天前 via Android   ♥ 1
    @index90 买个游标卡尺
    secsilm
        33
    secsilm   272 天前 via Android
    .py😀
    Fitz
        34
    Fitz   272 天前
    我以前也支持 toml,但自从配了 traefik 之后,我开始觉得还是 yaml 更清晰一点。
    Mmiracle110
        35
    Mmiracle110   272 天前
    配置中心
    forestyuan
        36
    forestyuan   272 天前
    我喜欢用 xml
    lfzyx
        37
    lfzyx   272 天前
    用 xml 的都是快被淘汰的 java 开发吧
    hjc4869
        38
    hjc4869   272 天前
    快被淘汰的 .NET 开发也表示喜欢用 XML
    mritd
        39
    mritd   272 天前 via iPhone
    快被淘汰的 java go 容器运维表示 xml 这个数据结构可以描述太多东西
    zjsxwc
        40
    zjsxwc   272 天前 via Android
    xml 毫无疑问
    lzvezr
        41
    lzvezr   272 天前
    xml 作为配置文件还是太重了一些, 毕竟 xhtml
    lithiumii
        42
    lithiumii   272 天前
    yaml
    正好今天开始转
    night98
        43
    night98   272 天前
    楼上说 xml 的是认真的吗,是要配置核弹还是火箭起飞程序? yaml 挺好的
    jiom
        44
    jiom   271 天前
    我会选择 yaml>xml>properties
    annielong
        45
    annielong   271 天前
    当然是 xml,通用
    ysc3839
        46
    ysc3839   271 天前 via Android
    我选 yaml。
    ice2neet
        47
    ice2neet   271 天前
    yaml 吧
    xfriday
        48
    xfriday   271 天前
    yaml+1
    ifaii
        49
    ifaii   271 天前 via iPhone
    yaml 写起来爽
    GiantHard
        50
    GiantHard   271 天前
    toml + 1
    yuankui
        51
    yuankui   258 天前
    我个人有两点要求
    1. 最好是能直接和 java 的 pojo 互转的(淘汰掉 xml )
    2. 方便编写(淘汰掉 json )
    3. 简洁 (淘汰掉 json )
    4. 能体现层次性(淘汰掉 properties )

    最终 yaml 胜出~✌️
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1014 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 29ms · UTC 20:13 · PVG 04:13 · LAX 12:13 · JFK 15:13
    ♥ Do have faith in what you're doing.