来自iOS客户端的突发/泛洪api请求

来自iOS客户端的突发/泛洪api请求,ios,objective-c,afnetworking,Ios,Objective C,Afnetworking,我有一个每天可以调用100-200个api的应用程序,我们每天有超过5000个活跃用户。其中,1台或2台设备似乎在30-50秒内发送10000个请求。当然,服务器可以识别这些情况并控制它们,但我正试图了解这是如何发生的。到目前为止,这只发生在两台设备上,但我无法理解为什么会发生这种情况 我们已经确认这些是来自实际客户,而不是来自恶意黑客。不,逻辑中没有for循环,如果用户在应用程序上打开配置文件,将导致api调用。在这种情况下,需要10000个概要文件api请求 以前有没有iOS工程师遇到过这个

我有一个每天可以调用100-200个api的应用程序,我们每天有超过5000个活跃用户。其中,1台或2台设备似乎在30-50秒内发送10000个请求。当然,服务器可以识别这些情况并控制它们,但我正试图了解这是如何发生的。到目前为止,这只发生在两台设备上,但我无法理解为什么会发生这种情况

我们已经确认这些是来自实际客户,而不是来自恶意黑客。不,逻辑中没有for循环,如果用户在应用程序上打开配置文件,将导致api调用。在这种情况下,需要10000个概要文件api请求

以前有没有iOS工程师遇到过这个问题?我正在使用AFNetworkingLibrary,调用如下所示简单

 AFHTTPRequestOperation *requestOperation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
        [requestOperation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject)
         {
                ...
         } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
             ...
                       }];

        [requestOperation start];             
两部分问题:

  • 为什么会有这种突发性的请求?这么受欢迎的图书馆有什么问题吗
  • 如何在客户端上检测此问题-需要注意的任何后台模式或iOS行为

  • 这个要求并不重要。重要的是:你在哪里做你的请求?AFNetworking很好,工作正常,所以我假设调用发出请求的方法被多次发送消息。我想你们想要的是应用程序中那个电话的确切位置——没什么好担心的。当需要查看配置文件时,只进行一次调用。如前所述,在使用过我们应用程序的约20000名用户中,这种情况只发生过2次。但这背后一定有原因。是的,但在哪里?我的意思是:在
    viewDidLoad
    <代码>视图布局子视图<代码>视图将出现:?几乎每种方法在视图控制器生命周期中都会被调用不止一次,可能只有
    viewDidLoad
    …Dude例外。好啊它在viewDidLoad中调用。我已经忘记了这些琐碎的原因,我认为真正的答案是不同的。你可能没有for循环,但是你有没有触发这个请求的计时器?您说过,到目前为止,这只发生在2台设备上,与您的大多数用户相比,这台设备有什么不同?请求没有那么重要。重要的是:你在哪里做你的请求?AFNetworking很好,工作正常,所以我假设调用发出请求的方法被多次发送消息。我想你们想要的是应用程序中那个电话的确切位置——没什么好担心的。当需要查看配置文件时,只进行一次调用。如前所述,在使用过我们应用程序的约20000名用户中,这种情况只发生过2次。但这背后一定有原因。是的,但在哪里?我的意思是:在
    viewDidLoad
    <代码>视图布局子视图<代码>视图将出现:?几乎每种方法在视图控制器生命周期中都会被调用不止一次,可能只有
    viewDidLoad
    …Dude例外。好啊它在viewDidLoad中调用。我已经忘记了这些琐碎的原因,我认为真正的答案是不同的。你可能没有for循环,但是你有没有触发这个请求的计时器?您说过,到目前为止,这只发生在2台设备上,与您的大多数用户相比,这台设备有什么不同?