我正在考虑创建一个网络应用程序,我的网络主机根据我database
执行持久性的次数向我收取费用,如果我在每次CRUD
操作后坚持不懈,这将花费我太多,我正在考虑一个解决方案,如果我暂时将数据存储在ArrayLists
或HashMaps
并安排我的持久性,即在每个30mins
或1hour
之后保留,那会有效吗?如果是这样那么最大的时间是什么,之后的时间应该是我需要持久保存Collection
以便我在数据库中实现更少的持久性。
答案 0 :(得分:0)
它会起作用,但代价是什么。
如果您丢失了存储在内存中的数据,会花多少钱?它将如何影响您的应用程序的用户?可伸缩性怎么样?
实际上,如果有这么多操作,就无法在应该完成的时间点执行所需的数据库事务。如果你达到了进行更多交易的程度,这并不意味着你有更多的客户,因此可以支付更多的费用。
我的建议是,这将是非常糟糕的做法。
答案 1 :(得分:0)
我认为这基本上是一种糟糕的做法。不要为您的Web主机设计您的Web应用程序。
每30分钟或1小时后持续
这样的设计可能会让你在将来遇到如此多的麻烦。想想当应用程序崩溃时会发生什么样的修改(无论出于什么原因,想象一下停电)。
另一方面,从性能角度来看,缓存实体会很有用,例如:http://memcached.org/