google app engine - GAE Datastore read/write latency in non-production app versions -
being awawre of fact datastore shared among app versions on google appengine, have created separate version of app use special purposes.
i have noticed, however, that, despite fact version executing same code production version, responds client requests slower production; requests result in deadlineexceedederror
.
a typical error can observe in logs looks this:
... friend.put() file "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/ext/db/__init__.py", line 1070, in put return datastore.put(self._entity, **kwargs) file "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/api/datastore.py", line 579, in put return putasync(entities, **kwargs).get_result() file "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 612, in get_result return self.__get_result_hook(self) file "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/datastore/datastore_rpc.py", line 1601, in __put_hook self.check_rpc_success(rpc) file "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/datastore/datastore_rpc.py", line 1234, in check_rpc_success rpc.check_success() file "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 576, in check_success self.wait() file "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 550, in wait assert self.__rpc.state != apiproxy_rpc.rpc.idle, repr(self.state) deadlineexceedederror
my question is: can case gae datastore operations latency consistently increases on non-production app versions? if so, there way solve problem while still using non-production app version?
does log entry entries deadlineexceedederror
include message?
this request caused new process started application, , caused application code loaded first time. request may take longer , use more cpu typical request application.
maybe that's causing go on time limit.
another option set appstats , see time being spent.
Comments
Post a Comment