2

プログラミングの決定をしている間、私は立ち往生しています、

私は.Net開発者です。現在、サードパーティのアプリケーションからデータを受信するクライアント用のアプリケーションを構築しています。次に、値に対して操作を実行し、それをWebサービス/サーブレットに送信してデータをWebページに表示する必要があります。ここでの注意点は、Webページでユーザーに送信されるデータ(投票オプション、カウントなど)は、遅くとも2秒ごとに更新する必要があるということです。

私はいくつかの決定を下すのに多くの混乱があります、

1)データプロバイダー(サードパーティアプリ)はJavaを推奨していますが、強制していません。私は.Net(C#)が得意ですが、アプリをC#またはJavaでビルドすることをお勧めします。最適化と速度の観点から、どちらが良いでしょうか?何をお勧めしますか?

2)サードパーティからデータを受信した後、私と同僚はさまざまな考えを持っています。データを受信したらすぐに、データベースに書き込む必要があります(毎回送信される固定フィールドはごくわずかであるため)。 、次にWebサービス/サーボレットを取得してデータを取得し、それを計算します。私の正当な理由は、保存すると、追跡データと履歴データ、およびユーザーの思考パターンも得られるということです。一方、m、yの同僚はそれを保存すると言っています。 dbを実行すると、アプリケーションが大幅に遅延し、アプリからデータを直接ポーリングする必要があります。また、dbがすぐに大量になり、低速になると考えています。これを試してみましたが、8秒の遅延が発生しています(何らかの理由でtomcat Webアプリの場合は7回の試行ごとにのみデータを取得し、Javaコンソールアプリの場合は1秒ごとにデータを保存します。)私の考えでは、dbに保存してそこから取得すると、コンソールアプリが毎秒アプリに書き込み、必要に応じてWebサービスを使用して毎秒データを取得できるようになります。

このシーンリオでは、あなたたちは何を良いアプローチだと思いますか、dbに保存するべきですか、それともdbに保存しないべきですか?

3)dbに保存したとしても、berkeleyまたはsqlserverを使用すると違いが生じると思いますか?.netにはsqlserver、javaにはバークレーを使用したいと思います

私はそれがかなり大きな質問であることを知っていて、かなり退屈でしょうが、どんな助け/提案も大いに感謝されます、これらの問題スタックオーバーフローでより明確にするのを手伝ってください。

御時間ありがとうございます!

よろしく。

4

3 に答える 3

5
  1. あなたはC#を知っていて、それを使用します。テクノロジーに他の制約がない場合は、最もよく知っているものを使用してください。

  2. 両方のシナリオを試すまで、パフォーマンスについて考えないでください。概念実証、自分のやり方、同僚のやり方を行い、パフォーマンスの違いと、履歴データの利点がパフォーマンスの違いに値するかどうかを確認します。

  3. C#にはSQLServerを使用します。ライセンスを考慮に入れる必要があるかもしれません(とにかくプロジェクトのコンテキストをよく知っています)。

于 2009-05-07T10:58:58.230 に答える
3

.NETに慣れているのなら、なぜJavaに時間を費やすのでしょうか。私のJavaに対する懸念は関係ありませんが、いずれにせよ、Javaの学習に時間を費やすことになり、おそらく、初心者の開発者がツールやテクノロジーに陥るのと同じ落とし穴に陥ることになります。

.NETに慣れている場合は、.NETで実行してください。最終結果はそれほど変わりませんが、より速くそこに到達します。

次に、計算を行い、データベースを「キャッシュ」の形式として使用することは、実績を保持することとは異なります。サードパーティのアプリから結果を返しても、履歴をデータベースに保存できます。遅すぎる場合は、キューに入れます。

于 2009-05-07T10:59:26.670 に答える
1
  1. クライアントにとって問題がない限り、最もよく知っている言語を使用してください。

  2. データを永続化する必要があるかどうか、永続化しない場合はクライアントに確認してください。永続化する必要がある場合は、オンライン処理に影響を与えることなく非同期で実行できます。

  3. 違いはわかりませんが、答えは永続データで何をしたいかによって異なります(どのくらいの期間保持したいのか、バックアップが必要なのか、ソリューションにお金を払ってもいいのか)...あなたが達成したいことを知っているなら、あなたは正しいツールを選ぶことができます、そして多分それはデータベースではないでしょう...

于 2009-05-07T11:40:31.877 に答える