2014-12-13 1 views
0

У меня есть код облака написанСколько запросов API рассматривается Parse.com?

Parse.Cloud.define("getApartmentVendorProduct", function(request, response) { 
    var isApartmentCallComplete = false; 
    var isVendorCallComplete = false; 
    var isProductCallComplete = false; 

    var result = {}; 

    var apartmentQuery = new Parse.Query("Apartment"); 
    apartmentQuery.find({ 
    success: function(results) { 
     isApartmentCallComplete = true; 
     results.apartments = results; 
    } 
    }); 

    var vendorQuery = new Parse.Query("Vendor"); 
    vendorQuery.find({ 
    success: function(results) { 
     isVendorCallComplete = true; 
     results.vendors = results; 
    } 
    }); 

    var productQuery = new Parse.Query("Product"); 
    productQuery.find({ 
    success: function(results) { 
     isProductCallComplete = true; 
     results.products = results; 
    } 
    }); 

    setInterval(function() { 
    if (isApartmentCallComplete && isVendorCallComplete && isProductCallComplete) { 
     response.success(results); 
    } 
    }, 50); 

}); 

PS: Я хорошо знаю, что setInterval не будет работать грамматический разбор .. Этот код просто для понимания.

В этой облачной функции я делаю 3 операции запроса.

Из моего приложения для Android я вызываю этот код облака.

Вот мой вопрос. Сколько запросов API считается рассмотренным?

1) 3 API запроса из облачным кода и 1 API запроса, сделанного Android - Всего 4

2) Только один API запрос, сделанный Android. - Итого 1

+1

Это должно быть вариантом 1. Вы можете проверить 'Api Requests' который в аналитической инструментальной панели приложения. – eth3lbert

+0

Спасибо и да, вариант 1 Я отправлю код, который я попробовал –

ответ

0

Опция 1, она составляет 4 запроса.

Я попытался с помощью кода образца для испытания на разрыв Предел

Parse.Cloud.define("testBurstLimit", function(request, response) { 
    var globalI = 0; 
    for(var i = 0; i < 500; i++) { 
    var productQuery = new Parse.Query("Product"); 
    productQuery.find({ 
     success: function(results) { 
     console.log("success " + i + " " + globalI); 
     globalI++; 
     if (globalI == 250) { 
      response.success("success"); 
     } 
     }, 
     error: function(error) { 
     isApartmentCallComplete = true; 
     if (isApartmentCallComplete && isVendorCallComplete && isProductCallComplete) { 
      console.log(error.message + " " + error.code); 
     } 
     } 
    }); 
    } 
}); 

Одно странно, я заметил, что. Parse не вычисляет запросы/секунду, а вычисляет в запросах в/мин. Проверьте реакцию Parse, когда я выполняю код BurstLimit облака снова и снова

{"code":155,"error":"This application performed 1814 requests over the last 28s, and exceeded its request limit. Please retry in 32s"}