I'm developing a GWT/App Engine app and using gwtrpccommlayer. I am performance testing some RPC requests to app engine using a standalone test app I wrote using:
private static final GwtRpcService service = GwtRpcService.FACTORY.newInstance();
private MyServiceAsync stub = service.create(...);
...
with RPC calls that look like this:
articleStub.getNewestArticle(new AsyncCallback<Article>() {
@Override
public void onSuccess(Article article) {
getComments(article);
}
@Override
public void onFailure(Throwable caught) {
caught.printStackTrace();
}
});
For some reason, I can only get 1 request every 2 seconds or so, even though appstats shows my requests taking about 5 milliseconds each. I tried a couple of things to speed it up:
1. Create my stubs in an init method that is only called once.
2. Create a Thread for each RPC test sequence.
While the Threads all get created very rapidly -- far less than a second -- requests only get processed 1 every 2 seconds. I am running WITHOUT billing. Does app engine meter requests to this level without billing, or could something else be causing this slow request processing?
I have uploaded the Test.java source file that includes the full code that contains the above code snippets.
Thanks in advance,
Rick