ReST Webサービスは状態を保持できません - これは大規模なデータベーストランザクションを検討しているときに私にとっては今のところ問題です。RESTと大規模なデータベースクエリ
私のReST Webサービスには、データベースに対してCRUD操作を行うという大きな役割があります。問題は、何千もの行を持つテーブルをクエリして、XMLとしてクライアントに返す必要がある場合です。これは良くありません。何千ものレコードを要求し続けるのは非常に非効率ですが、REST Webサービスで部分的なトランザクション(OracleのROWNUMキーワードを使用)はできません。だから、どうやってこれを回るの?
時テーブル100からレコードを取得するための1つの可能な方法は次のようになります。
:http://mywebservice/employees/0/100
私は次の要求は次のようになり100
すなわち提出最後のリクエストの状態を保持します
http://mywebservice/employees/101/200
などとなる。しかし、これは厳しく安らかですか?
このORACLEはどのように固有のものですか?クライアントは状態を保持しなければならず、返されるべきオフセット、順序、行数などのデータを送信する必要があります。クライアントがすべてのデータを必要とする場合は、何もできません。クライアントはすべての作業を行う必要があります。それとも私はここで何かを逃していますかあなたは正確なサンプルを投稿できますか? – Christian
問題は何ですか?テーブルが大きいのは?または返されたサブセットが大きいことは?または、データのサブセットを返すことはできませんか? – Ronnis
@Waxolunist - これは実際のOracle固有のものではありません。私はクライアントがすべての仕事をして状態を保持し、それに応じてURLを形成すべきだということに同意することができますが、クライアントが有効なURLを形成するために大量の情報を知っている必要はないという反論があります。そうでなければ、あなたは穏やかでない地域に踏み込んでいると思います。 – Vidar