今天在与同事讨论一个实现上的分歧,就是A对象的B属性,与应该来源与XML(数据源之一)还是DataBase。
其实两种实现方式,本质的区别在于XML我可以依赖与文件缓存,而DataBase我之能依赖于时间(因没有配制依赖于数据库的缓存)。
但同事认为,这样会造成XML文件过于庞大(发展的眼光看问题,没有错)而且检索上可能会有效率问题(个人认为这不是问题)。
其实原定用XML方式存储数据,是基于减少一部分数据库的压力,还有一部分原因是某一属性可能需要大量计算或者数据库不能直接提供。
后期由于需求的不断增加,就造成了XML和数据库两种数据来源的结果。所以,个人认为在程序设计的过程中一定要保证数据来源的一致性,
对于.net的BLL层更是这样。这样做的好处在于,便于调整数据层的解决方案(如增加memberCache呀)等等。
另外,对于数据的时效性,个人认为可以之两个方面去考虑:
1.时效更新的时效性;
2.用户需要的时效性;
我认为2>1。