0

SOAP、REST サービス、または単にデータベース ストアド プロシージャを使用して、内部および外部の複数のソースと通信するアプリケーションがあります。明らかに、パフォーマンスと安定性は私が扱っている主要な問題です。エンドポイントが最高のパフォーマンスを発揮している場合でも、大規模なデータ セットでは、数十秒かかる呼び出しがよく見られます。

そのため、少なくとも読み取り操作が高速になるように、データをプリフェッチしてローカルに保存することで、アプリケーションのパフォーマンスを向上させようとしています。

私のアプリケーションはデータの主要なコンシューマおよびプロデューサーですが、一部のデータはアプリケーションの外部からも変更される可能性があり、それを制御することはできません。キャッシュを使用すると、そのようなデータがアプリケーションの外部から変更されたときにキャッシュを無効にするタイミングがわかりません。

したがって、私の唯一の選択肢は、データベースを一貫して更新するジョブ スケジューラを実行することだと思います。ユーザーがログインしてアプリケーションを使用する頻度に基づいて、ユーザーに優先順位を付けることができました。

私が話しているのは、5 万人のユーザーと、非常に遅く、1 回の通話に 1 分かかることもある少なくとも 10 のエンドポイントです。Quartz のようなもので、必要なスケールが得られるでしょうか? また、スケジューラーが単一障害点になるのをどのように回避しますか?

私は、高度なメンテナンスを必要とせず、複雑ではないサブシステムの少なくともいくつかを高速化するものを探しています。助言がありますか?

4

1 に答える 1