2011-12-14 10 views
0

これはシンプルだが強力な質問です。RPC対GWTアプリケーションのJSON比較

RPCとRESTで1000 CustomDTOリストを送信するアプリケーションテストがあります。

ペイロード(RPC)とJSON(REST)を逆シリアル化するのにかかる時間を取得したいだけです。 utilのかさえGWTのutilに取得するか、いずれかのテストアプリがあり

クライアントの時間+サーバー時間+ワイヤー時間+ デシリアライズ時

を:

私の問題は私が得る時間が含まれていることですデシリアライゼーション時間ではなく、他の時間ですか?

ありがとうございました。

答えて

3

アプリで軽量メトリックを有効にする(http://code.google.com/webtoolkit/doc/latest/DevGuideLightweightMetrics.html) GWT-RPCはそのままの状態でサポートしているので、各GWT-RPC要求がシリアル化/脱エステル化にどれくらいの時間を要したか

1

RemoteServiceServletのいくつかのメソッドをオーバーライドできます。 その後、直列化に費やした時間を測定できます。

protected void onBeforeRequestDeserialized(String serializedRequest) { 
} 

protected void onAfterResponseSerialized(String serializedResponse) { 
} 

protected void onAfterRequestDeserialized(RPCRequest rpcRequest) { 
} 

私もいずれかのユーティリティを認識していませんよ。

+0

これはサーバークラスですか?私はクライアントのデシリアライゼーションに興味があります。 –

+0

私はあなたがクライアントでこれを行うことはできないと思います。私はあなたが応答を解析することができますが、それはシリアル化ではないことを意味します。 シリアライゼーションは、Javaオブジェクトをjsonに、またはその逆に変換するトリックです。 これはRemoteServiceServletで行われます。 GWT-RPCを使用する場合は、このクラスを拡張するサーブレットを作成する必要があります。そこで、これらのメソッドをオーバーライドできます。また、RemoteServiceServletがレスポンスを圧縮することに注意してください。 – Spiff

+0

RemoteServiceServletはレスポンスを圧縮しません。 –