2016-01-14 18 views
1

我正在开发一个有点像Vine的应用程序,其中几个循环的视频显示在用户的屏幕上。我需要为每个循环统计一个视图。这意味着,如果用户重复播放视频5次,它将计数5次视图。这是我想要用于我的应用程序的每个视频的模型。1视频视图= 1解析请求?如何改善?

我使用Parse解析我的后端和webview来显示视频。这意味着我使用Javascript通过Ajax调用将请求发送给Parse。

我的问题是,我真的不知道如何限制在视频中添加视图时发送给Parse的请求数量。

也许我应该将视频视图保存到MySQL数据库,然后每天一次用cron任务将MySQL结果保存到Parse?我不知道如何继续,但我真的需要限制请求数量到Parse。

您会如何设计?

谢谢!

+0

做的iOS为什么你需要限制请求的数量? – danh

+0

@danh因为我想优化我的应用程序。所以我不会为Parse上的大量请求付出太多的代价。 – fraxool

回答

1

我的第一个想法是不太优化。当你累积无数的用户时,应该有足够的时间来改进设计。

如果您想尽早改进它(仍然使用解析),请将跟踪视图“跟踪”视图的对象保留在本地(see this blog entry)。根据需要更新查看次数,然后更新NSTimer解析。

该应用程序可能随时变为非活动状态,如果自上次计时器启动以来已计数未保存的视图,那么还有一个问题需要解决。该应用程序的代表被告知,applicationDidEnterBackground,并可以要求片刻完成“最后一件事”。 See here under "Executing Finite Length Tasks"

有(IIN由示例代码建议派遣块),保存意见计数(saveInBackgroundWithBlock:)的对象,无效计时器,并告诉你与[application endBackgroundTask:bgTask];

1

我应该把视频存储在别的地方,每次点击保存1个视图。

您可以使用像这样保存此点击背景:

userClick.saveInBackground() 

它可以节省点击在后台处理线,使用户不必等待与解析同步。

注意:您应该使用Bolts(https://github.com/BoltsFramework/Bolts-iOS)来获取saveInBackground()工作。

*编辑*

也许它的智能与解析同步点击,也许5或10的每x量要限制的请求数量。