1

AndroidデバイスからApacheWebサーバーにセンサーデータを送信したい。センサーはIOIOボードを使用してAndroidデバイスに接続され、定期的にサンプリングされます。

生のセンサーデータは約1バイト/秒で、Apacheに基づいており、PHPとASP(ChiliASPだと思います)をサポートしているWebサーバーにこれを送信する効率的な方法を見つけようとしています。

月額料金を低く抑えるために、プリペイド式のモバイルサブスクリプションを使用したいと思います。通常、これらの最大データ制限は固定されています(500MB /月など)。

センサーは24時間年中無休でデータを送信する必要があるため、必要なデータトラフィックを最小限に抑えたいと思います。データ量がそれほど多くない場合でも、プロトコルヘッダーのオーバーヘッドが問題になると思います。各サンプル(1バイト)が別々に送信される場合、オーバーヘッド/ペイロードの比率は非常に低くなります。解決策はもちろん、いくつかのデータを集約し、それをより大きなチャンクで送信することです。

HTTPPOSTを使用してデータを送信するJavaHttpURLConnectionのテストに成功しましたが、これについていくつか質問があります。

  1. HTTPヘッダーによるオーバーヘッドはどのくらいですか?それを測定する簡単な方法はありますか?
  2. 私が検討できるAndroidとApacheでサポートされている他のプロトコルはありますか?
4

1 に答える 1

0

単純なHTTPGET/ POSTリクエストを使用して、jsonでエンコードされたデータをパラメーターとしてphpまたは任意の他の言語で実装されたWebサービスに送信できます。http get / postやjsonよりも単純/小さくなるとは思いません(誰かが私を修正できない限り)。JSONは、データ交換のための優れた、簡単で柔軟な形式であり、xmlよりもはるかに単純で簡潔です。JSON解析は、Java、JavaScript、PHPを含むほとんどの言語でネイティブに利用できます。また、非常に広く使用されています。

たとえば、HTTP getリクエストには、送信するパラメータの長さを除いて、多くのオーバーヘッドはありません。典型的なGETリクエストは次のとおりです。

GET /pub/WWW/TheProject.php?arg1=foo&arg2=bar HTTP/1.1 

arg1arg2は、TheProject.phpに渡す引数です。

于 2011-12-31T16:33:58.883 に答える