V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
V2EX  ›  Project Babel

关于 Project Babel 的系统配置的存储

  •  
  •   Livid · 2010-07-29 14:44:28 +08:00 · 4234 次点击
    这是一个创建于 5238 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在这里和大家讨论一下,大家觉得系统配置最好是存储在什么地方呢?

    Picky 是存储在 datastore 中,然后用一些快捷方法从 memcache 中读取,这样的一个好处是可以通过 web 界面来配置这些参数。但是可能会增加 50-100ms 的延迟。

    而另外一种做法是作为变量存储于 config.py 中,然后 import config 的方式来使用。这种方法的性能是最好的。只是每次更改设置的话,需要重新部署。不过像一些很敏感的东西(比如 Twitter 的 Consumer Secret 或 MobileMe 的用户名密码之类),放在 config.py 中就会有更高的安全性。

    大家觉得哪种方法更好呢,为什么。
    4 条回复    1970-01-01 08:00:00 +08:00
    Livid
        1
    Livid  
    MOD
    OP
       2010-07-29 14:46:30 +08:00
    确定了这个细节之后,源代码的公布就可以进入日程了。
    disinfeqt
        2
    disinfeqt  
       2010-07-29 14:51:07 +08:00
    嗯,admin 密码存放到 config.py,然后其他的从 admin panel 修改。
    huacnlee
        3
    huacnlee  
       2010-07-29 15:00:34 +08:00
    我在 Ruby on Rails 的里面的常见做法。
    配置信息放在YAML格式的文件里面

    如果要把Web服务器上面的项目跟开源项目绑在一起,那么就会有两个配置文件存在,配置结构相同
    - config/foo.yml (这个版本库排除管理)
    - config/foo.yml.default (这个签入,其他人下载的时候 copy 一份为 foo,yml)

    如此以来配置中的敏感信息(数据库密码,S3信息等)就可以受到保护,修改也方便
    huacnlee
        4
    huacnlee  
       2010-07-29 15:06:03 +08:00
    请认真的问自己,这些配置真的需要在后台修改吗?如果不是那么请简单一些吧,直接修改配置文件就好了,被过度,性能才是王。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   981 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 20:26 · PVG 04:26 · LAX 12:26 · JFK 15:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.