CakePHP を呼び出す非常に単純なリソースがあります。Advanced Rest Client を使用してリクエストを実行すると、約 100 ミリ秒で返されます。angularでは2〜4秒かかります。以下は、リソースがボトルネックであることを「証明」するために実行しているコードです。
リソース:
var resource = $resource('/index.php/props/:op/:id.json', {}, {
getPropertyListByCategory: { method:'GET', params:{ op:'getPropertyListByCategory', category:'@category' } },
setPropertyListByCategory: { method:'POST', params:{ op:'setPropertyListByCategory' } }
});
方法:
function getPropertyListByCategory(params) {
var x1 = Date.now();
var deferred = $q.defer();
resource.getPropertyListByCategory(params, function(resp) {
var x2 = Date.now();
console.log(x2-x1);
deferred.resolve(resp.data);
});
return deferred.promise;
}
リソース呼び出しの直前に I タイムスタンプを表示し、それを解決と比較できます。このリクエストを Cake に対して直接実行すると、非常に高速に返されます。ケーキは問題ではありません。
これを少しスピードアップする方法はありますか?