问题描述
|
我正在以对象的形式(通过机器人)在公司系统中收集大量数据,但是我不确定处理该数据的OOP建议是什么。
每个对象将包含非常少量的数据,但是将要成千上万。我应该在对象创建后立即将其记录在数据库中还是应该将其保留在内存中直到过程结束,然后再更新数据库?
第一种情况对我来说似乎更安全,但由于持续记录,它的速度也较慢。在第二种情况下,我会提高性能,但是数据将仅保留在内存中,直到过程结束(这将花费大量时间)。
我经常问自己,OOP关于存储对象数据的建议是什么。对象是否应该实现自己的数据库记录/检索数据方法?还是应该创建一个类来处理DB中的对象记录?如果您有这方面的经验,我想知道您正在练习什么。谢谢!
解决方法
使用存储库模式,即创建一个类来封装对某些存储的访问。
对于您的情况,我建议存储库行为的实现如下:
保存对象时,请将其存储在内存中并定期进行大容量数据库插入。
,成千上万个对象并不多。不必担心,直到需要为止。
当/确实需要担心它时,可以使用单独的线程写入数据库。