默认
发表评论 14
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
你这是打算做一个计算机专业的课程设计,还是真的是用于生产环境的财务系统?
评论 14
引用:freeman 发表于 2018-10-12 10:25
生产环境财务系统

也没有一个有经验的或者已有的系统可参考,就这么凭感觉来干?
引用:freeman 发表于 2018-10-12 10:31
哈哈,赤膊上阵,不过倒不是凭感觉,是认真分析,反复求证推敲的。还望jack在框架上指点一二

你的方案里:
方案一数据是最准确的,但随时时间的推移性能会越来越差;
方案三是很容易发生数据不一致的,不要以为上次余额计算准确了,这次做加减的结果也会是正确的。实际生产环境下,什么意外都有可能发生,不一致的可能性远比你想的大(因为我很多年以前是做erp的,这个是深有体会)。

方案二看起来好像是容易产生数据同步问题,但你深挖一下,什么时候需要同步,数据的实时性有多少要求,这个方案可能是个折中方案。不信你试着分析分析,跟钱有关的数据和算法,一定是要以准确为前提,其它在此前提无法保证的情况下都要退居2线再考虑,否则没有哪个财务愿用用这个系统。在财务眼里是1分钱都不能出错的,出错账就平不了,这也是为什么金蝶和用友做的东西,一般公司都不敢碰的原因
引用:dengpeng1994 发表于 2018-10-12 11:06
方案二,可以在缓存中同步保存一份,以调高查询效率

是的,用redis这样的缓存存储预计算的结果是个很好的主意。
而且缓存里可记住本次缓存的计算时间,读取数据时如果怕这个数据不是最新的,可以再做第2个动作:就是及时统计一下这个时间之后的交易(用当前缓存里的余额结果再跟本次及时统计的时间段数据进行合并计算)。这样的话既能保证数据的准确性,也能保证性能,因为缓存的计算时间至今肯定是个很短的时间,第2个实时统计的动作里,涉及的最新交易明细肯定很少,这个实时查询性能也就不是问题了。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部