2017-03-10 17 views
0

私は、javascriptのフロントエンドとTomcat/javaサーバーを持つWebアプリケーションを使っています。フロントエンドは、ユーザーがテーブルを変更して行を追加してフォームに入力できる単なるテーブルです。私は、ユーザーがテーブルを保存できるようにいくつかのコードを書いた。それはフォームのデータをhttpリクエストを介してサーバーに送信し、サーバーはOracleデータベースにデータを書き込み、すべて正常に機能します。クライアントからチャンクされたデータを受け取るサーバーのテクニック

テーブルが大きくなるにつれて、1回のリクエストですべてを送信することはもはや実現できません。 1つの提案は、行を別々の要求に分割することでしたが、1つの要求が成功し、別の要求が失敗した場合、oracle表は正しくありません。

サーバーは、すべてのデータが受信されるまでサーバーが処理を開始しないうちに、サーバーに複数のデータチャンクを送信する好ましい方法は何ですか?私はデータのチャンクに関するTCP接続について多くのSOの質問を見てきましたが、実際にはHTTPリクエストの周りにはありません。

ありがとうございました。

+0

テーブル全体を実際に*表示する必要がありますか?これだけでは縮尺は変わりません。実際の実装では、ユーザにフィルタを提供する必要があります。次に、与えられた答えに応じて、変更された行だけを送信してください。 – EJP

+0

良い点ですが、私の場合、テーブルの作成(テキスト数行で50行まで)では、現在の制限より多くのデータを送信する必要がありました。私はおそらくあなたの提案を組み込むべきですが、クライアントがhttp要求のサイズ制限で表現できるものよりも多くの変更を望んでいるなら、それでも何の問題がありますか? – zachvac

+0

同じ答え。その機会を彼に与えないでください。一度に変更できる行だけを表示してください。 – EJP

答えて

0

なぜリクエストごとにテーブル全体を送信しようとしていますか?違いを送ってください。私はあなたが行またはいくつかの識別子のIDを持っていると仮定します。削除された行のID、新しい行のリスト、および更新された行のリストを送信します。そうすれば、すべてのテーブルデータを送信する必要はありません。

+0

私の場合、私の場合、テーブルの作成(テキスト数行で50行まで)は、現在の制限よりも多くのデータを送信する必要がありました。私はおそらくあなたの提案を組み込むべきですが、クライアントがhttp要求のサイズ制限で表現できるものよりも多くの変更を望んでいるなら、それでも何の問題がありますか? – zachvac

0

本当には、ユーザーが変更するたびにテーブル全体を送信する必要がありますか?単に変更された行だけを変更できるAPIを作成するのはなぜですか?はるかに良い解決策のようです。このようにして、クライアントは関連データのみを送信する。単一の追加/変更された行

関連する問題