2011-09-18 57 views

回答

0

最好的办法就是memcache将数据存储到数据存储中。你提到的“每秒所有这些数据的平均值”对我来说没有多大意义;除非你有很多用户或正在产生耗尽电量的数据量,否则每秒的平均值可能只是第二次提交的数据。此外,“实时”可能欺骗了你;它需要时间的数据传输到服务器,并返回到电话。特别是在EDGE和较慢的数据网络上,可能会导致数秒的延迟。

做每分钟平均计算可能是实际的;为此,我只是简单地创建一个memcache元组,其中包含当前接收的值的数量及其表示的均值。然后,当你得到一个新的值时,重新计算平均值(用平均值乘以值的数量[不包括增量]并加上新的值,然后除以新的值的数量)。将其存储在memcache中,然后继续。如果你明智地使用memcache,那么在那一分钟内你的数据就不会被驱逐,如果它被驱逐,你最多只会丢失一分钟的数据。如果这不可接受,请将其备份到数据存储区。

相关问题