大家都是如何读取配置文件的?

2015-11-25 11:27:39 +08:00
 Lullaby
### 项目读取配置文件的地方非常多,如果每次都用流的形式将配置文件读一遍肯定影响效率。
### 实际项目中用了一个类似 ConfigLoader 的加载器去把.properties 配置文件读取一遍,放在一个应用上下文的静态对象中,但始终感觉不太优雅!
### 各位都是如何读取配置文件的?
3863 次点击
所在节点    程序员
24 条回复
knightdf
2015-11-25 12:53:07 +08:00
python 和 lua 表示什么是配置文件?
wshcdr
2015-11-25 12:54:26 +08:00
如果你的配置文件就 1k 大,启动的时候读取一遍,能影响多少效率呢?
cnhongwei
2015-11-25 12:57:13 +08:00
一次读取到内存对象中啊。如果有热加载的要求,可以放缓存系统中。
orFish
2015-11-25 13:01:44 +08:00
指针啊- -
Lullaby
2015-11-25 14:24:27 +08:00
@knightdf 恩 python lua 大法好
Lullaby
2015-11-25 14:33:38 +08:00
@wshcdr 当然这并不会影响效率,只是觉得不够 graceful 啊笑 cry
Lullaby
2015-11-25 14:45:14 +08:00
@knightdf
@wshcdr
@cnhongwei
@orFish
放在 static Properties 对象中 像这样

每次从静态对象 props 中 get
shooter
2015-11-25 14:49:11 +08:00
yml 文件
mhoudg
2015-11-25 14:57:07 +08:00
Java 的 Spring 用户表示:我们的依赖是反转的,用 value 的 annotation 把配置的每一个项目接入到运行时了
fxxkgw
2015-11-25 18:17:48 +08:00
学习下 nginx 读取保存配置文件的方法
Lullaby
2015-11-25 19:01:20 +08:00
knightdf
2015-11-25 20:45:17 +08:00
@Lullaby 其实我觉得怎么清晰可维护怎么搞,一个配置文件影响不了啥效率
elgoog1970
2015-11-25 22:14:47 +08:00
redis+yml 文件
Lullaby
2015-11-25 22:49:39 +08:00
@knightdf 不纠结 就随应用启动加载到内存中
Lullaby
2015-11-25 22:50:12 +08:00
@elgoog1970 回头试一下
aprikyblue
2015-11-25 23:05:21 +08:00
启动时 load+parse ,必要的转换成对应 struct
zhuangzhuang1988
2015-11-25 23:16:29 +08:00
@knightdf ruby 和 js 用户也这样表示.
Lullaby
2015-11-26 00:23:06 +08:00
@zhuangzhuang1988
@aprikyblue
@elgoog1970
@knightdf
@fxxkgw
@mhoudg
如果实时从流读取,大家有何看法?
zonghua
2015-11-26 00:46:14 +08:00
@mhoudg 除了 Resourse 类,我还真不知道其他办法读类目录的文件
pkking
2015-11-26 08:48:59 +08:00
toml 大发好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/238748

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX