yuu_nkjm blog
2014-06-24(Tue) [長年日記]
[GDocs][Java][JSON-RPC] JSON-RPCサーバとJavaScriptを使ったGoogle Spreadsheetのデータの読み込み,追加,編集,削除
今さらながら,Spreadsheets Data APIを使うための基礎知識(2):APIでGoogleスプレッドシートの追加/更新/削除 (1/3) - @ITを参考に,Google Spreadsheetにアクセスするコードを書いて,動かして見た.更新がやたら遅い印象.
- 2枚のスプレッドシートから1枚を選び出し,そのスプレッドシートに含まれる1枚のワークシートから1枚のワークシートを取り出す => 1000ms
- 2列100行のデータを読み込む => 500ms
- 2列100行のデータを読み込み,特定の行(20行)を選び出す => 500ms (全行取得してから自分でフィルタリング)
- 2列100行のデータを読み込み,特定の行(20行)の値を更新 => 10s(10000ms)
- 2列100行のデータを読み込み,特定の行(1行)の値を更新 => 10s(10000ms)
- 2列100行を持つ表に対して,1行を挿入 => 500ms
Googleが提供しているサンプルの様にキャッシュしたらどれくらい早くなるのかは試していない.
コードはこの辺においておく.JsonRPCService/src/org/nkjmlab/gdata at master · yuu-nkjm/JsonRPCService
JSON-RPCのサーバと組み合わせて,クライアントからサーバにJSONを投げてGoogle Spreadsheetからの読込/への書込をするのが狙いだった.Javaのサービスクライアント,JavaScriptのサービスクライアントから呼び出せることを確認した.まずはここまで.
トラブルシューティング
6 24, 2014 5:39:47 午後 jp.go.nict.langrid.servicecontainer.handler.jsonrpc.JsonRpcDynamicHandler handle
警告: IOException occurred.
ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error
というエラーが,サーバ側で頻発していた.これはJavaScriptのajaxでクエリを投げるところが3秒でタイムアウトしていて,サーバ側から3秒以内に結果が戻ってこなかった場合,サーバから切断してしまう.サーバ側は3秒たった後に結果を返そうとしても接続が切れてしまっているので,上記のエラーが出る.ということだと思う.
参考ページ
- https://www.google.co.jp/ ×176
- http://t.co/w4AvLkxuSq ×5
- https://www.google.com/ ×4
- https://www.facebook.com/ ×3
- https://www.google.co.jp/ ×1
- http://search.smt.docomo.ne.jp/result?MT=DF-RPC-01... ×1
- http://search.fenrir-inc.com/?q=putty Software cau... ×1
- http://search.smt.docomo.ne.jp/result?MT=DF-RPC-01... ×1
- http://search.yahoo.co.jp/ ×1
- https://www.google.co.kr/ ×1
- ClientAbortException SSL ×1 / googleスプレッドシート SQL ×1 / java spreadsheet 遅い ×1 / df-rpc-01エラー ×1 / google spreadsheet json 読み込み ×1 / Software caused connection abort: socket write error ×1 / javascript googlespreadsheet 行を追加 ×1 / openstreemap google spreadsheet ×1 / JSON-RPC JavaScript 接続 ×1 / Software caused connection abort squid ×1 / javascript RPCサーバー ×1 / ClientAbortException Tomcat ×1 / eclipseでjson-rpcクライアント ×1 / googleスプレッドシート tomcat ×1 / squid Software caused connection abort ×1 / "java.net.SocketException: Software caused connection abort: socket write error" ×1 / squit Software caused connection abort ×1 / スプレットシート JSON HTML ×1 / ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error ×1 / ClientAbortException API ×1 / socket write error ワードプレス ×1 / DF‐RPC‐01 エラー ×1 / Tomcat "socket write error" "Software caused connection abort" ×1