1

私はWebサービス開発の初心者です。設計に関する質問をして、最善のアプローチを理解したいと思います。いくつかのオブジェクトをユーザーに返すWebサービスを作成する必要があり、次のように機能する必要があります。

  • リクエスト:システム内の赤いリンゴをください
  • 応答:5つの赤いリンゴ。3つの青リンゴも見つかりました。私も返却すべきですか?
  • リクエスト:はい->レスポンスは8個のリンゴを返します
  • リクエスト:いいえ->レスポンスは5個のリンゴを返します

それを行うために単一のWebサービスを使用しますか?もしそうなら、現在の状態を追跡するための最良の方法は何ですか?(私は要求/応答に2つのフラグを考えていましたが、それが良い考えかどうかはわかりません。)

4

1 に答える 1

0

複数の操作 (メソッド) を実装することを選択することもできますが、そのために単一の Web サービスを使用することは間違いありません。

状態管理には通常、何らかの形のストレージが必要です。データベースまたはメモリ内キャッシュを使用できます。また、スケールの処理、高可用性、クリーンアップ ルーチンなどを考慮する必要があります。

リクエストを関連付けるには、いくつかのトークンを渡す必要があります。通常、これは最初のリクエストまたは最初のレスポンスのいずれかによって提供され、その後の呼び出しで再利用されます。これにより、サービスは関連するコンテキストを取得できます。

この種の実装をサポートするための標準が存在するため、さまざまなフレームワークと言語にこれに対するサポートが組み込まれているため、実装に使用する関連テクノロジで何かを探します。

最後になりましたが、通常、Web 実装について考える場合、状態は望ましくないため、可能な限りステートレス実装を選択してください。サービスが何も記憶する必要なく、リクエスタが次の大量のデータを取得するためのまったく新しいリクエストを発行できる場所。

于 2012-11-21T19:41:27.873 に答える