1

さまざまな REST サービスで構成される分散アプリケーションを設計しています。最近、REST サービスを ASP.NET MVC 4 Web API と OData のどちらを使用して実装するかについて、行ったり来たりしています。Web API はいつか私が必要とするものになるように思われますが、現時点では半分しかできていません。具体的には、OData スタイルの URI クエリの部分的な実装のみを備えており、すぐに使用できるハイパーメディアは実行しません。

このため、OData をもう一度じっくりと検討する必要があります。私は URI クエリ機能と遅延読み込みのための構造的ハイパーメディアが本当に気に入っています。私は自分のアプリケーションでこれらの機能をたくさん使うと思います。ただし、Atom Pub 仕様は非常に効率が悪いようです。

最近、 「高密度の JSON」に言及しているOData の効率的な形式に関する投稿を読みましたが、そのようなものは実際には存在しないようです。これは本当ですか?また、高密度の JSON などがない場合でも、通常の JSON は Atom Pub よりもはるかに効率的ですよね?

JSON 経由で Atom Pub を使用したい状況はありますか?

4

1 に答える 1

1

OData のセマンティック レベルでは、ATOM と JSON の間にほとんど違いはありません。また、ほとんどの OData サーバー (確かに WCF Data Services) は両方をサポートしているため、どちらを使用するかはクライアントの選択です。Pablo のブログ投稿で言及されているように、最適なペイロード サイズを得るには、HTTP 圧縮を有効にする必要があります。ATOM と JSON の両方でうまく機能します。

JSON の読み取りは高速になる傾向がありますが (XML の解析はやや高価です)、それはクライアントの CPU 消費が懸念される場合です。私の記憶が正しければ、最後に数字を見たとき、ATOM と JSON の圧縮されたペイロード サイズはそれほど違いはありませんでした。

通常、ATOM PUB は、JSON ではなく適切な XML または ATOM ライブラリを利用できるクライアントで使用する方が簡単です。およびその逆。しかし、それ以外には大きな違いはないはずです。

于 2012-03-09T18:34:41.330 に答える